Bonjour,
j'ai un code qui me permet d'insérer des lignes d'une autre feuille à un
endroit précis de ma feuille "10".
cependant, ma feuille "Bal2" est structurée comme ceci au niveau des
colonnes, de A à F :
COMPTE / LIBELLE / DEBIT N / CREDIT N / DEBIT N-1 / CREDIT N-1
et je voudrais copier les informations en "10", mais selon les colonnes
suivantes de A à G :
COMPTE / LIBELLE / vide / DEBIT N / CREDIT N / DEBIT N-1 / CREDIT N-1
il faudrait donc décaler les cellules copiées d'une colonne, après les 2
premières colonnes...
Merci de votre aide.
YANN
---------
'module qui permet d'importer les numéros de comptes en dessous des feuilles
maitresses
Sub IMPORTBAL()
rep = MsgBox("Voulez-vous importer les comptes sous les feuilles maitresses
?", vbYesNo)
If rep = vbNo Then Exit Sub
SUPPRIMEBAL
Sheets("10").Select
Range("DETAIL10").Select
For Each C In Worksheets("Bal2").Range("A2:A1000")
n1 = Mid(C, 1, 2)
n2 = Mid(C, 1, 2)
n3 = Mid(C, 1, 2)
n4 = Mid(C, 1, 2)
n5 = Mid(C, 1, 2)
n6 = Mid(C, 1, 4)
n7 = Mid(C, 1, 4)
n11 = Mid(C, 1, 2)
n12 = Mid(C, 1, 4)
n13 = Mid(C, 1, 4)
n14 = Mid(C, 1, 4)
n15 = Mid(C, 1, 4)
n16 = Mid(C, 1, 4)
n21 = Mid(C, 1, 2)
n22 = Mid(C, 1, 4)
n23 = Mid(C, 1, 3)
n24 = Mid(C, 1, 3)
n25 = Mid(C, 1, 4)
n26 = Mid(C, 1, 4)
If n1 = 10 Or n2 = 11 Or n3 = 12 Or n4 = 13 Or n5 = 14 Or n6 = 6874 Or n7 =
7874 _
Or n11 = 15 Or n12 = 6815 Or n13 = 6865 Or n14 = 6875 Or n15 = 7865 Or n16 =
7875 _
Or n21 = 16 Or n22 = 5186 Or n23 = 661 Or n24 = 512 Or n25 = 6617 Or n26 =
6861 Then
Selection.EntireRow.Insert Shift:=xlDown
ActiveCell.Offset(0, 0).Select
Range(C, C.Offset(0, 255).End(xlToLeft)).Copy
ActiveSheet.Paste
ActiveCell.Offset(1, 0).Select
End If
Next
End Sub
------
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
Dans ta feuille 10 , tu inscris tes étiquettes de colonne que tu désires conserver en respectant exactement le libellé de ta feuille bal2 (évidemment tu enlèves le libellé indésiré.
Toujours en Feuil2, tu appelles la commande Filtre élaboré En t'assurant de ne pas avoir mis ton curseur dans la ligne où tu viens de copier les en-têtes.
lorsque tu viens le temps de remplir la source, tu sélectionne la feuille10 et tu définis toute la plage et tu actives le bouton radio "copier ailleurs" et tu lui donne l'adresse de ta ligne d'entête de la feuil10 sans mentionner de critère, et tu vas obtenir exactement ce que tu désires.
"Sunburn" a écrit dans le message de groupe de discussion : Bonjour, j'ai un code qui me permet d'insérer des lignes d'une autre feuille à un endroit précis de ma feuille "10". cependant, ma feuille "Bal2" est structurée comme ceci au niveau des colonnes, de A à F : COMPTE / LIBELLE / DEBIT N / CREDIT N / DEBIT N-1 / CREDIT N-1 et je voudrais copier les informations en "10", mais selon les colonnes suivantes de A à G : COMPTE / LIBELLE / vide / DEBIT N / CREDIT N / DEBIT N-1 / CREDIT N-1
il faudrait donc décaler les cellules copiées d'une colonne, après les 2 premières colonnes...
Merci de votre aide. YANN
--------- 'module qui permet d'importer les numéros de comptes en dessous des feuilles maitresses Sub IMPORTBAL() rep = MsgBox("Voulez-vous importer les comptes sous les feuilles maitresses ?", vbYesNo) If rep = vbNo Then Exit Sub SUPPRIMEBAL Sheets("10").Select Range("DETAIL10").Select For Each C In Worksheets("Bal2").Range("A2:A1000") n1 = Mid(C, 1, 2) n2 = Mid(C, 1, 2) n3 = Mid(C, 1, 2) n4 = Mid(C, 1, 2) n5 = Mid(C, 1, 2) n6 = Mid(C, 1, 4) n7 = Mid(C, 1, 4) n11 = Mid(C, 1, 2) n12 = Mid(C, 1, 4) n13 = Mid(C, 1, 4) n14 = Mid(C, 1, 4) n15 = Mid(C, 1, 4) n16 = Mid(C, 1, 4) n21 = Mid(C, 1, 2) n22 = Mid(C, 1, 4) n23 = Mid(C, 1, 3) n24 = Mid(C, 1, 3) n25 = Mid(C, 1, 4) n26 = Mid(C, 1, 4) If n1 = 10 Or n2 = 11 Or n3 = 12 Or n4 = 13 Or n5 = 14 Or n6 = 6874 Or n7 7874 _ Or n11 = 15 Or n12 = 6815 Or n13 = 6865 Or n14 = 6875 Or n15 = 7865 Or n16 7875 _ Or n21 = 16 Or n22 = 5186 Or n23 = 661 Or n24 = 512 Or n25 = 6617 Or n26 6861 Then Selection.EntireRow.Insert Shift:=xlDown ActiveCell.Offset(0, 0).Select Range(C, C.Offset(0, 255).End(xlToLeft)).Copy ActiveSheet.Paste ActiveCell.Offset(1, 0).Select End If Next End Sub ------
Dans ta feuille 10 , tu inscris tes étiquettes de colonne
que tu désires conserver en respectant exactement le
libellé de ta feuille bal2 (évidemment tu enlèves le
libellé indésiré.
Toujours en Feuil2, tu appelles la commande Filtre élaboré
En t'assurant de ne pas avoir mis ton curseur dans la ligne
où tu viens de copier les en-têtes.
lorsque tu viens le temps de remplir la source, tu
sélectionne la feuille10 et tu définis toute la plage
et tu actives le bouton radio "copier ailleurs" et tu
lui donne l'adresse de ta ligne d'entête de la feuil10
sans mentionner de critère, et tu vas obtenir exactement
ce que tu désires.
"Sunburn" <Sunburn@discussions.microsoft.com> a écrit dans le message de groupe de
discussion : 2976ED08-FB86-4D5E-9401-591082A4F944@microsoft.com...
Bonjour,
j'ai un code qui me permet d'insérer des lignes d'une autre feuille à un
endroit précis de ma feuille "10".
cependant, ma feuille "Bal2" est structurée comme ceci au niveau des
colonnes, de A à F :
COMPTE / LIBELLE / DEBIT N / CREDIT N / DEBIT N-1 / CREDIT N-1
et je voudrais copier les informations en "10", mais selon les colonnes
suivantes de A à G :
COMPTE / LIBELLE / vide / DEBIT N / CREDIT N / DEBIT N-1 / CREDIT N-1
il faudrait donc décaler les cellules copiées d'une colonne, après les 2
premières colonnes...
Merci de votre aide.
YANN
---------
'module qui permet d'importer les numéros de comptes en dessous des feuilles
maitresses
Sub IMPORTBAL()
rep = MsgBox("Voulez-vous importer les comptes sous les feuilles maitresses
?", vbYesNo)
If rep = vbNo Then Exit Sub
SUPPRIMEBAL
Sheets("10").Select
Range("DETAIL10").Select
For Each C In Worksheets("Bal2").Range("A2:A1000")
n1 = Mid(C, 1, 2)
n2 = Mid(C, 1, 2)
n3 = Mid(C, 1, 2)
n4 = Mid(C, 1, 2)
n5 = Mid(C, 1, 2)
n6 = Mid(C, 1, 4)
n7 = Mid(C, 1, 4)
n11 = Mid(C, 1, 2)
n12 = Mid(C, 1, 4)
n13 = Mid(C, 1, 4)
n14 = Mid(C, 1, 4)
n15 = Mid(C, 1, 4)
n16 = Mid(C, 1, 4)
n21 = Mid(C, 1, 2)
n22 = Mid(C, 1, 4)
n23 = Mid(C, 1, 3)
n24 = Mid(C, 1, 3)
n25 = Mid(C, 1, 4)
n26 = Mid(C, 1, 4)
If n1 = 10 Or n2 = 11 Or n3 = 12 Or n4 = 13 Or n5 = 14 Or n6 = 6874 Or n7 7874 _
Or n11 = 15 Or n12 = 6815 Or n13 = 6865 Or n14 = 6875 Or n15 = 7865 Or n16 7875 _
Or n21 = 16 Or n22 = 5186 Or n23 = 661 Or n24 = 512 Or n25 = 6617 Or n26 6861 Then
Selection.EntireRow.Insert Shift:=xlDown
ActiveCell.Offset(0, 0).Select
Range(C, C.Offset(0, 255).End(xlToLeft)).Copy
ActiveSheet.Paste
ActiveCell.Offset(1, 0).Select
End If
Next
End Sub
------
Dans ta feuille 10 , tu inscris tes étiquettes de colonne que tu désires conserver en respectant exactement le libellé de ta feuille bal2 (évidemment tu enlèves le libellé indésiré.
Toujours en Feuil2, tu appelles la commande Filtre élaboré En t'assurant de ne pas avoir mis ton curseur dans la ligne où tu viens de copier les en-têtes.
lorsque tu viens le temps de remplir la source, tu sélectionne la feuille10 et tu définis toute la plage et tu actives le bouton radio "copier ailleurs" et tu lui donne l'adresse de ta ligne d'entête de la feuil10 sans mentionner de critère, et tu vas obtenir exactement ce que tu désires.
"Sunburn" a écrit dans le message de groupe de discussion : Bonjour, j'ai un code qui me permet d'insérer des lignes d'une autre feuille à un endroit précis de ma feuille "10". cependant, ma feuille "Bal2" est structurée comme ceci au niveau des colonnes, de A à F : COMPTE / LIBELLE / DEBIT N / CREDIT N / DEBIT N-1 / CREDIT N-1 et je voudrais copier les informations en "10", mais selon les colonnes suivantes de A à G : COMPTE / LIBELLE / vide / DEBIT N / CREDIT N / DEBIT N-1 / CREDIT N-1
il faudrait donc décaler les cellules copiées d'une colonne, après les 2 premières colonnes...
Merci de votre aide. YANN
--------- 'module qui permet d'importer les numéros de comptes en dessous des feuilles maitresses Sub IMPORTBAL() rep = MsgBox("Voulez-vous importer les comptes sous les feuilles maitresses ?", vbYesNo) If rep = vbNo Then Exit Sub SUPPRIMEBAL Sheets("10").Select Range("DETAIL10").Select For Each C In Worksheets("Bal2").Range("A2:A1000") n1 = Mid(C, 1, 2) n2 = Mid(C, 1, 2) n3 = Mid(C, 1, 2) n4 = Mid(C, 1, 2) n5 = Mid(C, 1, 2) n6 = Mid(C, 1, 4) n7 = Mid(C, 1, 4) n11 = Mid(C, 1, 2) n12 = Mid(C, 1, 4) n13 = Mid(C, 1, 4) n14 = Mid(C, 1, 4) n15 = Mid(C, 1, 4) n16 = Mid(C, 1, 4) n21 = Mid(C, 1, 2) n22 = Mid(C, 1, 4) n23 = Mid(C, 1, 3) n24 = Mid(C, 1, 3) n25 = Mid(C, 1, 4) n26 = Mid(C, 1, 4) If n1 = 10 Or n2 = 11 Or n3 = 12 Or n4 = 13 Or n5 = 14 Or n6 = 6874 Or n7 7874 _ Or n11 = 15 Or n12 = 6815 Or n13 = 6865 Or n14 = 6875 Or n15 = 7865 Or n16 7875 _ Or n21 = 16 Or n22 = 5186 Or n23 = 661 Or n24 = 512 Or n25 = 6617 Or n26 6861 Then Selection.EntireRow.Insert Shift:=xlDown ActiveCell.Offset(0, 0).Select Range(C, C.Offset(0, 255).End(xlToLeft)).Copy ActiveSheet.Paste ActiveCell.Offset(1, 0).Select End If Next End Sub ------