br44
XLDnaute Impliqué
Bonjour le forum ,
Je me permet de poster se peiti message pour un problème d'affichage dans la macro qui suis :
'Déclare le Chemin3 vers "CA.xls"
Dim Chemin3 As String
'Dèclare la variable Wb5
Dim Wb5 As Workbook
'Declare la Variable C1
Dim C1 As String
'Declare la Variable MZ
Dim MZ As Range
'Declare la Variable F
Dim F As Range
'Dèfinit la varible C
C1 = ActiveSheet.Range("A4").Value
'Dèfinit la varible Chemin3
Chemin3 = "C:\RAPID\GESTION\CA.XLS"
'Dèfinit la varaible Wb4
Set Wb5 = Workbooks.Open(Chemin3)
'Dèfinit la variable MZ
Set MZ = Wb5.Sheets(Mois).Range("A4:A" & Range("A65536").End(xlUp).Row)
'Boucle sur la plage R et MP
For Each F In MZ
'Défintit la condition de la plage C
If F.Value = C1 Then
'Sélectionne les Cases C1
Select Case C1
Case ClientA 'Pour le client:"C054"
With Wb2
With .Sheets("Facture")
.Range("G26").Copy
F.Offset(0, 1).PasteSpecial xlPasteValues
.Range("G28").Copy
F.Offset(0, 2).PasteSpecial xlPasteValues
.Range("G30").Copy
F.Offset(0, 3).PasteSpecial xlPasteValues
.Range("G32").Copy
F.Offset(0, 4).PasteSpecial xlPasteValues
.Range("G34").Copy
F.Offset(0, 5).PasteSpecial xlPasteValues
.Range("G36").Copy
F.Offset(0, 6).PasteSpecial xlPasteValues
.Range("G38").Copy
F.Offset(0, 7).PasteSpecial xlPasteValues
End With
With .Sheets("AnnexFacture1")
.Range("G38").Copy
F.Offset(0, 8).PasteSpecial xlPasteValues COLOR="magenta"Résultat non Affiché
End With[/COLOR]
End With
Case Else 'pour les autres clients
With Wb2
With .Sheets("Facture")
.Range("G26").Copy
F.Offset(0, 1).PasteSpecial xlPasteValues
.Range("G28").Copy
F.Offset(0, 2).PasteSpecial xlPasteValues
.Range("G30").Copy
F.Offset(0, 3).PasteSpecial xlPasteValues
.Range("G32").Copy
F.Offset(0, 4).PasteSpecial xlPasteValues
.Range("G34").Copy
F.Offset(0, 5).PasteSpecial xlPasteValues
.Range("G36").Copy
F.Offset(0, 6).PasteSpecial xlPasteValues
.Range("G38").Copy
F.Offset(0, 7).PasteSpecial xlPasteValues
End With
End With
'Fin de selection
End Select
'Sortie de boucle
Exit For
'Fin de condition
End If
'Sort de la plage
Next F
Application.CutCopyMode = False
'Enregistre les données du classeur "CA.XLS"
Wb5.Save
'Ferme le Classeur "CA.XLS"
Wb5.Close
le problème se situe au niveau de "l'AnnexFacture1" la macro affiche les bien rèsultats pour la première partie("facture") mais pas pour la deuxième ("AnnexFacture1"),Comme si la feuille consernée n'est pas enregistrée .
Si quelqu'un à une solution à me proposer cela m'aiderais beaucoup.
Dan l'attante d'une rèpnse je vous dis à plus en vous remerciant .
BR44
Ci-joint le classeur de destination :
Je me permet de poster se peiti message pour un problème d'affichage dans la macro qui suis :
'Déclare le Chemin3 vers "CA.xls"
Dim Chemin3 As String
'Dèclare la variable Wb5
Dim Wb5 As Workbook
'Declare la Variable C1
Dim C1 As String
'Declare la Variable MZ
Dim MZ As Range
'Declare la Variable F
Dim F As Range
'Dèfinit la varible C
C1 = ActiveSheet.Range("A4").Value
'Dèfinit la varible Chemin3
Chemin3 = "C:\RAPID\GESTION\CA.XLS"
'Dèfinit la varaible Wb4
Set Wb5 = Workbooks.Open(Chemin3)
'Dèfinit la variable MZ
Set MZ = Wb5.Sheets(Mois).Range("A4:A" & Range("A65536").End(xlUp).Row)
'Boucle sur la plage R et MP
For Each F In MZ
'Défintit la condition de la plage C
If F.Value = C1 Then
'Sélectionne les Cases C1
Select Case C1
Case ClientA 'Pour le client:"C054"
With Wb2
With .Sheets("Facture")
.Range("G26").Copy
F.Offset(0, 1).PasteSpecial xlPasteValues
.Range("G28").Copy
F.Offset(0, 2).PasteSpecial xlPasteValues
.Range("G30").Copy
F.Offset(0, 3).PasteSpecial xlPasteValues
.Range("G32").Copy
F.Offset(0, 4).PasteSpecial xlPasteValues
.Range("G34").Copy
F.Offset(0, 5).PasteSpecial xlPasteValues
.Range("G36").Copy
F.Offset(0, 6).PasteSpecial xlPasteValues
.Range("G38").Copy
F.Offset(0, 7).PasteSpecial xlPasteValues
End With
With .Sheets("AnnexFacture1")
.Range("G38").Copy
F.Offset(0, 8).PasteSpecial xlPasteValues COLOR="magenta"Résultat non Affiché
End With[/COLOR]
End With
Case Else 'pour les autres clients
With Wb2
With .Sheets("Facture")
.Range("G26").Copy
F.Offset(0, 1).PasteSpecial xlPasteValues
.Range("G28").Copy
F.Offset(0, 2).PasteSpecial xlPasteValues
.Range("G30").Copy
F.Offset(0, 3).PasteSpecial xlPasteValues
.Range("G32").Copy
F.Offset(0, 4).PasteSpecial xlPasteValues
.Range("G34").Copy
F.Offset(0, 5).PasteSpecial xlPasteValues
.Range("G36").Copy
F.Offset(0, 6).PasteSpecial xlPasteValues
.Range("G38").Copy
F.Offset(0, 7).PasteSpecial xlPasteValues
End With
End With
'Fin de selection
End Select
'Sortie de boucle
Exit For
'Fin de condition
End If
'Sort de la plage
Next F
Application.CutCopyMode = False
'Enregistre les données du classeur "CA.XLS"
Wb5.Save
'Ferme le Classeur "CA.XLS"
Wb5.Close
le problème se situe au niveau de "l'AnnexFacture1" la macro affiche les bien rèsultats pour la première partie("facture") mais pas pour la deuxième ("AnnexFacture1"),Comme si la feuille consernée n'est pas enregistrée .
Si quelqu'un à une solution à me proposer cela m'aiderais beaucoup.
Dan l'attante d'une rèpnse je vous dis à plus en vous remerciant .
BR44
Ci-joint le classeur de destination :