Macro recopie incrémentée
Résolu/Fermé
ValentinISSBA
Messages postés
25
Date d'inscription
vendredi 5 juin 2009
Statut
Membre
Dernière intervention
3 juin 2013
-
9 mars 2010 à 11:28
ValentinISSBA Messages postés 25 Date d'inscription vendredi 5 juin 2009 Statut Membre Dernière intervention 3 juin 2013 - 10 mars 2010 à 14:56
ValentinISSBA Messages postés 25 Date d'inscription vendredi 5 juin 2009 Statut Membre Dernière intervention 3 juin 2013 - 10 mars 2010 à 14:56
A voir également:
- Macro recopie incrémentée
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Macro word - Guide
- Jitbit macro recorder - Télécharger - Confidentialité
- Macro logiciel - Télécharger - Organisation
- Tri automatique excel sans macro ✓ - Forum Excel
7 réponses
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
10 mars 2010 à 10:15
10 mars 2010 à 10:15
Bonjour,
Le soucis est que la macro devra s'appliquer en fonction de la sélection Je ne comprends pas ta question... Peux tu donner un exemple concret de ce que tu souhaites?
Le soucis est que la macro devra s'appliquer en fonction de la sélection Je ne comprends pas ta question... Peux tu donner un exemple concret de ce que tu souhaites?
ValentinISSBA
Messages postés
25
Date d'inscription
vendredi 5 juin 2009
Statut
Membre
Dernière intervention
3 juin 2013
1
10 mars 2010 à 10:33
10 mars 2010 à 10:33
En fait l'idée est que je souhaite insérer une ligne et que cette nouvelle ligne comporte les formules des lignes déjà présentes.
La macro que j'ai trouvé :
Range("C9:P9").Select
Selection.AutoFill Destination:=Range("C9:P10"), Type:=xlFillDefault
Fait une recopie incrémentée de ma ligne 9 de la colonne C à P sur la ligne 10 de la colonne C à P.
Or je souhaiterais que cette recopie incrémentée se fasse en fonction de la ligne que j'ai sélectionné. En gros le numéro de ligne (9 dans mon exemple) devient une variable.
Donc en gros j'utilise la macro :
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Pour insérer une ligne et j'aimerais que cette nouvelle ligne possède les formule de la ligne supérieure, par recopie incrémentée ou autre si vous avez d'autres solutions je suis preneur.
Merci.
La macro que j'ai trouvé :
Range("C9:P9").Select
Selection.AutoFill Destination:=Range("C9:P10"), Type:=xlFillDefault
Fait une recopie incrémentée de ma ligne 9 de la colonne C à P sur la ligne 10 de la colonne C à P.
Or je souhaiterais que cette recopie incrémentée se fasse en fonction de la ligne que j'ai sélectionné. En gros le numéro de ligne (9 dans mon exemple) devient une variable.
Donc en gros j'utilise la macro :
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Pour insérer une ligne et j'aimerais que cette nouvelle ligne possède les formule de la ligne supérieure, par recopie incrémentée ou autre si vous avez d'autres solutions je suis preneur.
Merci.
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
10 mars 2010 à 12:08
10 mars 2010 à 12:08
Alors :
Effectivement, il faut définir une variable qui stocke le n° de ligne insérée :
Effectivement, il faut définir une variable qui stocke le n° de ligne insérée :
Dim ligne As Integer ligne = ActiveCell.Row 'ligne = n° de ligne ou l'on a préalablement 'sélectionné une cellule Rows(ligne).Insert Shift:=xlDown 'on insère une ligne Range(Cells(ligne - 1, 3), Cells(ligne - 1, 16)).Select 'on sélectionne les cellules 'contenant des formules dans la ligne précédente Selection.AutoFill Destination:=Range(Cells(ligne - 1, 3), Cells(ligne, 16)) 'on incrémente ces cellules vers le bas End Sub
ValentinISSBA
Messages postés
25
Date d'inscription
vendredi 5 juin 2009
Statut
Membre
Dernière intervention
3 juin 2013
1
10 mars 2010 à 12:17
10 mars 2010 à 12:17
Merci j'essaie ca tout de suite.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ValentinISSBA
Messages postés
25
Date d'inscription
vendredi 5 juin 2009
Statut
Membre
Dernière intervention
3 juin 2013
1
10 mars 2010 à 12:22
10 mars 2010 à 12:22
Cool.
Ça fonctionne. Là ou je galérais c'était pour nommer le numéro de ligne aléatoire mais grâce a toi tout fonctionne.
Merci encore.
Ça fonctionne. Là ou je galérais c'était pour nommer le numéro de ligne aléatoire mais grâce a toi tout fonctionne.
Merci encore.
ValentinISSBA
Messages postés
25
Date d'inscription
vendredi 5 juin 2009
Statut
Membre
Dernière intervention
3 juin 2013
1
10 mars 2010 à 13:38
10 mars 2010 à 13:38
Désolé mais j'ai un nouveau petit soucis.
Certaines cellules que j'incrémente sont remplies par des nombres et non des formules.
Comment spécifier que l'incrémentation ne doit pas changer mon 1 et 2 par exemple (un peu comme la touche Ctrl quand on fait un incrémentation manuelle).
J'ai cru comprendre qu'on pouvait le spécifier par un paramètre de Autofill noté ,Type:=
Mais lequel paramètre utiliser?
Merci
Certaines cellules que j'incrémente sont remplies par des nombres et non des formules.
Comment spécifier que l'incrémentation ne doit pas changer mon 1 et 2 par exemple (un peu comme la touche Ctrl quand on fait un incrémentation manuelle).
J'ai cru comprendre qu'on pouvait le spécifier par un paramètre de Autofill noté ,Type:=
Mais lequel paramètre utiliser?
Merci
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
Modifié par pijaku le 10/03/2010 à 13:48
Modifié par pijaku le 10/03/2010 à 13:48
Je ne connais pas la spécificité de tous ces paramètres. Je peux juste vous les lister grâce à l'aide VBA, à vous ensuite de tester celui qui vous convient le mieux.
Arguments XlAutoFillType facultatif :
XlAutoFillType peut être l'une de ces constantes XlAutoFillType.
xlFillDays
xlFillFormats
xlFillSeries
xlFillWeekdays
xlGrowthTrend
xlFillCopy
xlFillDefault default
xlFillMonths
xlFillValues
xlFillYears
xlLinearTrend
Si vous affectez à cet argument la valeur xlFillDefault ou que vous ne le spécifiez pas, Microsoft Excel sélectionne le type de recopie le plus approprié en fonction de la plage source
S'il s'agit de nombres, on peux également les exclure du Range que l'on "autofill"...
Arguments XlAutoFillType facultatif :
XlAutoFillType peut être l'une de ces constantes XlAutoFillType.
xlFillDays
xlFillFormats
xlFillSeries
xlFillWeekdays
xlGrowthTrend
xlFillCopy
xlFillDefault default
xlFillMonths
xlFillValues
xlFillYears
xlLinearTrend
Si vous affectez à cet argument la valeur xlFillDefault ou que vous ne le spécifiez pas, Microsoft Excel sélectionne le type de recopie le plus approprié en fonction de la plage source
S'il s'agit de nombres, on peux également les exclure du Range que l'on "autofill"...
ValentinISSBA
Messages postés
25
Date d'inscription
vendredi 5 juin 2009
Statut
Membre
Dernière intervention
3 juin 2013
1
10 mars 2010 à 14:56
10 mars 2010 à 14:56
Merci en testant j'ai trouvé celui qui me convenait.
Pour info ,Type:=xlFillCopy
Merci encore bonne journée.
Pour info ,Type:=xlFillCopy
Merci encore bonne journée.