Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

fonction Application.Workbooks.Open (gestions de plusieurs classeurs)HELP !!!!

calimero75

XLDnaute Nouveau
Bonjour,

Après, quelques un de vos conseils, quelques exercices et beaucoup de sueur, j'ai réussit à obtenir un résultat correcte quand à ma macro mais il reste une erreur que je n'arrive pas à corriger . Si une âme charitable peut me venir en aide !!!

J'aimerai effectuer différentes actions entre 2 classeurs mais je plante sur l'interaction entre les 2 classeurs. j'ai l'erreur 438 "propriété ou méthode non gérée par cet objet" au niveau de la ligne en rouge ci dessous :

Sub exporte()
'1er compteur utilisé pour le tant que
Dim i As Integer
'juste pour vérifier la dérniere cellule scanée
Dim fin As Integer
'définir la ligne de départ tableau 1
Dim departL1 As Integer
'définir la ligne de départ tableau 2
Dim departL2 As Integer
'définir le nombre de ligne à Scanner/copier
Dim NBLignes As Integer
Dim classeurSource As Workbook, classeurDestination As Workbook
'définir le classeur destination
Set classeurSource = ThisWorkbook
'définir le classeur destination
Set classeurDestination = Application.Workbooks.Open("C:\Users\Steph\Desktop\test\tests basic\destination.xlsx")

i = 3
fin = i
departL1 = 4
departL2 = 13
NBLignes = 6
Do While Not (IsEmpty(Cells(3, i)))
If classeurSource.Cells(3, i) = classeurDestination.Cells(12, i) Then
For nombre = 0 To NBLignes
classeurDestination.Cells(departL2 + nombre, i) = classeurSource.Cells(departL1 + nombre, i)

Next
End If

i = i + 1
fin = fin + 1
Loop

Cells(5, 10) = i
Cells(6, 10) = fin
ActiveWorkbook.Save
classeurDestination.Save

End Sub

J'imagine que l'erreur est présente également ici :
classeurDestination.Cells(departL2 + nombre, i) = classeurSource.Cells(departL1 + nombre, i)

Comment écrire ceci correctement MErci !!!

PS : la macro doit exporter des données d'un classeur à un autre en fonction d'un test assez simple
 

gilbert_RGI

XLDnaute Barbatruc
Re : fonction Application.Workbooks.Open (gestions de plusieurs classeurs)HELP !!!!

bonjour

If classeurSource.Cells(3, i) = classeurDestination.Cells(12, i) Then

ilfaut peut-être indiquer la sheet utilisée ???
 

calimero75

XLDnaute Nouveau
Re : fonction Application.Workbooks.Open (gestions de plusieurs classeurs)HELP !!!!

bonjour gilbert,

Oui en effet si je ne précise pas la feuille à utiliser effectivement.
Heuu comment dire, merci beaucoup

Pour le petit newbie qui comme moi n'a pas l'œil expérimenté , ca marche
mieux ainsi :

If classeurSource.Sheets("Nom de la feuille").Cells(3, i) = classeurDestination.Sheets("Nom de la feuille").Cells(12, i) Then
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…