IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Transformation de colonnes [XL-2013]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    impiegato
    Inscrit en
    Mai 2019
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : impiegato

    Informations forums :
    Inscription : Mai 2019
    Messages : 124
    Par défaut Transformation de colonnes
    Bonjour a tout le monde j’écris da l’Italie, j’espère m’exprimer bien.
    Dans un fichier Excel je a joins j’ai dans la feuille 2 3 colonnes

    A B C Dans la colonne A numéro d’entreprise employé dans la colonne B Date et dans la colonne C l’abréviation de l’absence avec les heures

    Je voudrais utiliser le code VBA pour columnize les données comme dans la feuille 3
    Dans la colonne A la matriculation et sous les dates dans la colonne C l’absence avec les heures


    Je joins le fichier xlsm
    Fichiers attachés Fichiers attachés

  2. #2
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 241
    Par défaut
    Bonjour,

    Le code Vba
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    Sub Copiare()
        Dim DerLig_F1 As Long
        Dim f1, f2
     
        Application.ScreenUpdating = False
        Set f1 = Sheets("Foglio2")
        Set f2 = Sheets("Foglio3")
        f2.Cells.Clear
     
        DerLig_F1 = f1.[A10000].End(xlUp).Row
        f1.Range(Cells(1, "A"), Cells(DerLig_F1, "C")).Copy Destination:=f2.Cells(1, "A")
     
        Matr = Cells(1, "A")
        For i = 2 To DerLig_F1
            If f2.Cells(i, "A") = Matr Then
                f2.Cells(i, "A") = ""
            Else
                Matr = Cells(i, "A")
            End If
        Next
     
        f2.Select
        For i = 1 To DerLig_F1
            If Cells(i, "A") <> "" Then
                Matr = Cells(i, "A")
                Rows(i).Insert Shift:=xlDown
                Cells(i, "B") = Matr
                With Cells(i, "B").Font
                    .Name = "Calibri"
                    .Size = 11
                    .Color = -16776961
                End With
                i = i + 1
            End If
        Next
        Columns(1).Delete
    End Sub
    Le fichier
    Pièce jointe 478989

    Cdlt

  3. #3
    Membre actif
    Homme Profil pro
    impiegato
    Inscrit en
    Mai 2019
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : impiegato

    Informations forums :
    Inscription : Mai 2019
    Messages : 124
    Par défaut Transformation de colonnes
    Merci Arturo pour votre sollicitude


    Il est possible d'avoir la colonne B sous A et C à côté

  4. #4
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 241
    Par défaut
    Bonjour,

    Je ne comprends pas, n'est-ce pas ce qui était demandé?

    ------Avant(Foglio2)-------------------------------------------------- Après(Foglio3)
    Pièce jointe 479286 ------------- Pièce jointe 479290

    Cdlt

  5. #5
    Membre actif
    Homme Profil pro
    impiegato
    Inscrit en
    Mai 2019
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : impiegato

    Informations forums :
    Inscription : Mai 2019
    Messages : 124
    Par défaut
    Bonsoir,
    exactement et ce que je voudrais mais après avoir couru la macro ça me donne ce résultat:


    Nom : Cattura.PNG
Affichages : 309
Taille : 9,1 Ko

  6. #6
    Membre actif
    Homme Profil pro
    impiegato
    Inscrit en
    Mai 2019
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Italie

    Informations professionnelles :
    Activité : impiegato

    Informations forums :
    Inscription : Mai 2019
    Messages : 124
    Par défaut
    J'ai associé la macro à un bouton

    Nom : Cattura.PNG
Affichages : 318
Taille : 32,0 Ko

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 03/05/2011, 17h41
  2. [2005] Transformation de colonne dérivée
    Par pticouta dans le forum SSIS
    Réponses: 7
    Dernier message: 27/04/2011, 12h10
  3. Réponses: 6
    Dernier message: 11/10/2009, 11h57
  4. Transformer des colonnes en lignes
    Par marman dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 23/11/2006, 18h43
  5. transformer des colonnes en lignes
    Par flonardi dans le forum Oracle
    Réponses: 13
    Dernier message: 28/10/2004, 13h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo