Excel macro VBA

Résolu/Fermé
jack36 - 31 juil. 2022 à 10:07
 jack36 - 1 août 2022 à 17:16

Bonjour la communauté,

Je suis novice en macro et VBA,

J'ai un fichier excel avec par ex. les données suivantes :

colonne A des noms : toto, lolo, roro, ....

colonne B des objets : pommes, poires, prunes, ....

colonne C des départements : Ain, Aude, Aveyron, ....

Je désire copier x fois, entre 5 et 10 fois  (valeur choisi au lancement du programme)

les valeurs de la ligne 1 (toto, pommes, Ain) en colonne D,E et F (ou bien dans une autre feuille/onglet, si plus simple, peu importe)

(par ex. 7 fois toto en colonne D, 7 fois pommes en colonne E, 7 fois Ain en colonne F)

puis incrémenter de 1

c'est à dire copier à la suite les valeurs ligne 2 (lolo, poires, Aude) (toujours 7 fois dans mon exemple)

et ainsi de suite ....

Je vais essayer de joindre un fichier excel d'exemple pour être plus clair.

Merci pour votre réponse et bon week-end à tous,

Jacques.

A voir également:

3 réponses

cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
31 juil. 2022 à 12:00

Bonjour,

un exemple à mettre dans un module:

Option Explicit
Sub test()
Dim DerniereLigneUtilisee As Long
Dim dl As Integer
Dim i As Integer
Dim j As Integer
Dim repetition As Integer
DerniereLigneUtilisee = Cells(Rows.Count, 1).End(xlUp).Row
  repetition = InputBox("Nombre de répétition :", "Répétition", "7")
For i = 1 To DerniereLigneUtilisee
For j = 1 To repetition
Cells(j + dl, 4).Value = Cells(i, 1).Value
Cells(j + dl, 5).Value = Cells(i, 2).Value
Cells(j + dl, 6).Value = Cells(i, 3).Value
Next j
dl = Cells(Rows.Count, 4).End(xlUp).Row
Next i
End Sub

voilà


1

Bonjour cs Le Pivert,

Merci infiniment pour ta réponse rapide.

Je vois que tu as bien compris ma demande de macro (même sans avoir pour ma part joint de petit tableau excel pour mieux expliquer mon désir) car après un essai cette macro fonctionne parfaitement. Quel bonheur.

Merci également au site "Comment ça marche". J'ai 68 ans et je suis un novice en fichier excel et macro.

Juste une petite question pour que je me couche "légèrement plus intelligent ce soir".

J'ai décrypté ta macro, et j'ai "à peu près" compris l'enchainement des lignes de commandes.

Néanmoins il y a 2 lignes contiguës que je ne comprends pas:

Dim i As Integer

Dim j As Integer

question : que veux dire, ou bien à quoi se rapporte les lettres "i" et "j" ? ?

(existe-t-il un petit bouquin simple et clair pour comprendre les instructions des macro)

Encore merci à toi "cs Le Pivert" et bon mois d'Août ou que tu sois.

Jacques.

0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
1 août 2022 à 11:35

voir ceci pour les boucles et pour tout le reste:

https://www.excel-pratique.com/fr/vba/boucles

i va parcourir la colonne A du début jusqu'à la dernière ligne remplie

j va faire le nombre de répétition demandées

voilà

@+ Le Pivert

0

merci à toi pour ce complément d'info sur ma macro;

Bonne aprèm ..... à l'ombre,

Jacques.

0