Merci pour l'aide de vous tous, ça marche très bien
Je rencontre un autre pb
J'ai créé et ouvert une feuille excel avec 2 onglets.Je m'intéresse pour commencer au 1er onglet "correction". Voilà la code.
Code :
- 'Déclaration des variables
- Dim appExcel As Excel.Application 'Application Excel
- Dim wbExcel As Excel.Workbook 'Classeur Excel
- Dim wsExcel As Excel.Worksheet 'Feuille Excel
- 'Ouverture de l'application
- Set appExcel = CreateObject("Excel.Application" )
- 'Ouverture d'un fichier Excel
- Set wbExcel = appExcel.Workbooks.Open(chemin_report & annee_courant & mois_entier & jour_entier & heure_entiere & minute_entiere & seconde_entiere & nom_report & nom_cluster & "_from_" & li_annee_analyse & li_mois_analyse_entier & ".xls" )
- 'wsExcel correspond à la feuille correction
- Set wsExcel = wbExcel.Worksheets("correction" )
|
J'appelle ensuite une fonction pour copier la colonne et l'insérer là où je veux:
Code :
- Call NouvelleColonne((premiere_ligne - 1), "D", col_ou_copier, wsExcel)
- Sub NouvelleColonne(ligne_debut As Integer, colonne_a_copier As String, colonne_ou_copier As String, feuille_excel As Excel.Worksheet)
- feuille_excel.Columns(colonne_a_copier & ":" & colonne_a_copier).Select
- Selection.Copy
- feuille_excel.Columns(colonne_ou_copier & ":" & colonne_ou_copier).Select
- Selection.Insert Shift:=xlToRight
- ' effacement des valeurs de la colonne copiée
- Dim ligne_fin As Integer
- ligne_fin = ligne_debut + 12
- Range(colonne_ou_copier & ligne_debut & ":" & colonne_ou_copier & ligne_fin).Select
- Application.CutCopyMode = False
- Selection.ClearContents
- End Sub
|
Quand j'exécute, j'ai une erreur à la 1ère ligne de la fonction: "select methode of Range class failed" ..
Toutes mes variables sont bonnes. La seule que je ne peux pas vérifier, c'est feuille_excel, et je pense que ça vient de là. Mais pourquoi ?
Merci!
P.S: vous verrez que j'ai pas tout à fait suivi ce que vous m'avez conseillé, mais ça correspond mieux à ce que je veux (vider que qqs cellules)
Message édité par Myway le 17-06-2004 à 15:00:57