Aide transformation Tableau X lignes/14 colonnes en X lignes 3 Colonnes

Salut à tous ,

En ces temps de confinement j'essaye d'optimiser les catalogues de ma société.

J'avais des notions en VBA il y a des années.

J'ai malheureusement tout abandonné et j'ai clairement tout perdu pour m'adonner à d'autres problématique

J'aurais besoin de votre aide.

J'ai récupéré des bouts de codes. Adaptés mes attentes mais je galère avec du langage que j'ai perdu.

Voici mon besoin. J'ai ça de la part de mon fournisseur.

-------- Je peux pas mettre de lien avant 10 messages ... super >> Donc onglet 1

Je veux et je sais en faire CA :

-------Onglet 2

Je le fais grâce à ça. je vais pas vous mentir j'ai des souvenir de la logique mais plus les détails exacts.

Sub Macro1()

End Sub

Ceci est un cas simple...

j'aimerais pouvoir faire fonctionner la macro dans une sitation tel que celle ci :

------- Onglet 3

Pourriez vous m'aider à comprendre la logique qui permet de borner le départ de l'exécution de la macro et sa fin svp ?

Je n'arrive pas à m'en dépatouiller.

Car dans le fichier d'origine il y aura d'autres éléments au dessus, Avant Colonne D, et apres Q qu'il ne faut pas intégrer.

Merci à vous ! bon dimanche

Nico

Bonjour

A comparer avec ton autre macro pour la feuil2 en ajoutant une Feuil4

Sub Macro1()

x = 1

For i = 8 To Sheets("Feuil3").Range("D65536").End(xlUp).Row
For y = 5 To Sheets("Feuil3").Range("IV8").End(xlToLeft).Column

Sheets("Feuil4").Cells(x, 1) = Sheets("Feuil3").Cells(i, 5)
Sheets("Feuil4").Cells(x, 2) = Sheets("Feuil3").Cells(8, y)
Sheets("Feuil4").Cells(x, 3) = Sheets("Feuil3").Cells(i, y)

x = x + 1

Next
Next

Super , merci pour ton aide je viens de comprendre grâce à mon cas de décalage en 5 ; 8.

Par contre un truc me revient pas ...

For i = 8 To Sheets("Feuil3").Range("D65536").End(xlUp).Row

For y = 5 To Sheets("Feuil3").Range("IV8").End(xlToLeft).Column

Pour D j'ai pipé. logique.

Pour Range("IV8") je ne comprend pas.... dsl

Merci pour ton aide... si tu as 1 min pour me décrire un peu la fonction ;p

Re

Pour Range("IV8") je ne comprend pas.

Tu cherches la dernière colonne de A8 à IV8, si tu reste sur IV1, les colonnes sont vides, donc tu recherches depuis la première colonne sur la ligne 8 jusqu'à la dernière en revenant sur la gauche

Je me suis trompé,

Quand j'ai vu que je pouvais pas mettre d'image je me suis rabattu sur le fichier excel mais pas le bon et pas avec la macro. Bref , de la bouze.

Voici le bon , tu vas voir en onglet 2 mon besoin est différent.

et grace à tes indications sur la logique à adopter j'ai réussi à la faire fonctionner entre Feuille3 et 4

Merci pour ton aide.

Re,

Teste comme ceci

Sub Macro2()
  x = 1
    For i = 8 To Sheets("Feuil3").Range("D65536").End(xlUp).Row
      For y = 5 To Sheets("Feuil3").Range("IV8").End(xlToLeft).Column
        Sheets("Feuil4").Cells(x, 1) = Sheets("Feuil3").Cells(i, 4)
        Sheets("Feuil4").Cells(x, 2) = Sheets("Feuil3").Cells(8, y)
        Sheets("Feuil4").Cells(x, 3) = Sheets("Feuil3").Cells(i, y)
        x = x + 1
      Next i
    Next y
End Sub
Rechercher des sujets similaires à "aide transformation tableau lignes colonnes"