VBA - Collage transposé

  • Initiateur de la discussion Initiateur de la discussion yoanncloet
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Y

yoanncloet

Guest
Bonjour à tous,

Je reçois tous les mois le fichier suivant (onglet "Data").
Ce fichier me sert de base tous les mois et me permet de faire des croisements avec d'autres fichiers à analyser.

La présentatioin de ce fichier ne me satisfait pas pour les recherchesv. Je dois toujours le transposer. Il est est pas énorme mais c'est pas passionnant et ça prend néanmoins du temps.

Je souhaiterai automatiser cette tâche mais mon niveau en VBA ne me le permet pas... 😡

Pouvez vous svp m'aider ? Je joins un fichier.
L'onglet "Data" est la source que je reçois tous les mois.
Ensuite le secon onglet est le résultat que je souhaiterai. A partir de l'UGA, j'ai besoin du secteur et du nom).

N'hésitez pas si vous la moindre question.
Merci d'avance aux âmes charitables qui sauront et qui prendront le temps de m'aider.

Bon courage et bonne journée.
Yoann
 

Pièces jointes

Re : VBA - Collage transposé

Bonjour Yoann,

voici un essai :
Code:
Sub test()
Dim iLig As Long, zoneCopie As Range, zoneColle As Range
    
    With ThisWorkbook.Sheets("Data")
        'boucler sur toutes les lignes de la feuille "Data"
        For iLig = 2 To .Range("C" & .Rows.Count).End(xlUp).Row
            Set zoneCopie = .Range(.Cells(iLig, 3), .Cells(iLig, .Columns.Count).End(xlToLeft))
            With ThisWorkbook.Sheets("Résultat souhaité")
                Set zoneColle = .Range("A" & .Rows.Count).End(xlUp).Offset(1).Resize(zoneCopie.Count, 1)
            End With
            zoneCopie.Copy
            zoneColle.PasteSpecial xlPasteValues, , , True
            zoneColle.Offset(0, 1).Value = .Range("A" & iLig)
            zoneColle.Offset(0, 2).Value = .Range("B" & iLig)
        Next iLig
    End With
    Application.CutCopyMode = False
End Sub

a+
 
Re : VBA - Collage transposé

merci à tous les 2 pour vos réponses.
Pierrejean, ta solution me convient à merveille.
C'est exactement ce dont j'ai besoin. Un énorme merci.
ça me montre une fois de plus l'intérêt de VBA... va vraiment falloir que je m'y colle.

Merci et bonne journée.
Yoann
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

P
Réponses
0
Affichages
1 K
Ptinotsgnik
P
I
Réponses
2
Affichages
2 K
I
A
Réponses
5
Affichages
1 K
AmelieMelo
A
Y
Réponses
11
Affichages
3 K
Y
D
Réponses
5
Affichages
1 K
Dimebag
D
A
Réponses
1
Affichages
1 K
francoisC
F
G
Réponses
11
Affichages
3 K
A
Réponses
5
Affichages
1 K
A
Retour