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 :

transfert de données entre differentes feuilles d'un classeur ou entre classeurs


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 46
    Points : 38
    Points
    38
    Par défaut transfert de données entre differentes feuilles d'un classeur ou entre classeurs
    Le code suivant me permet de transposer un tableau en selectionnant le tableau source avec la sourie et en selectionnant la cellule du depart du tableau cible avec la sourie aussi.

    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
    Sub transpose()
     
    Dim plage1 As Range
    Dim plage2 As Range
     
    Dim feuille_source
    Dim feuille_cible
     
    Set plage1 = Application.InputBox(prompt:="Selectionnez la plage à transposer ", Type:=8)
     
    a = plage1.Rows.Count
    b = plage1.Columns.Count
     
    Set plage2 = Application.InputBox(prompt:="Selectionnez la plage cible ", Type:=8)
     
    Application.ScreenUpdating = False
    For i = 1 To a
        For j = 1 To b
           plage2.Cells(j, i) = "=" & plage1.Cells(i, j).Address
        Next j
    Next i
     
    End Sub
    Mon probleme c'est que cette macro ne marche que si le tableau source et cible sont tous les deux dans la meme feuille du meme classeur.

    j'ai essayé de mettre le nom de la feuille courante dans une variable comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    feuille_source = ActiveWorkbook.ActiveSheet.Name
    MsgBox ("la feuille source est:" & vbCr & feuille_source)
    mais il m'affiche toujours la meme feuille du depart

    Je precise que mon but est de fixer la source et la destination uniquement avec la sourie. Donc une solution du type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets("feuil2").Cells(j, i) = Sheets("feuil1").Cells(i, j)
    ne sera pas interressante.

    merci d'avance pour votre aide

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Tu instancies Classeurs et feuilles de calculs et tu utilises ces instances dans ton code.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim CL1 as workbook
    Dim CL2 as Workbook
    Dim Fl1 as worksheet
    Dim Fl2 as worksheet
        Set CL1 = Worlbooks("LeClasseur1.xls")
        Set CL2 = Worlbooks("LeClasseur2.xls")
        Set Fl1 = CL1.Worksheets("Feuil1")
        Set Fl2 = CL2.Worksheets("Feuil1")
        Fl2.Cells(j, i) = Fl1.Cells(i, j)
    Regarde aussi ici

  3. #3
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Points : 24 327
    Points
    24 327
    Par défaut
    Pour sélectionner une plage, il vaut mieux utiliser RefEdit que InputBox.
    C'est fait pour...
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

Discussions similaires

  1. [XL-2010] Transfert de données d'une feuille à une autre
    Par flavionnais dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 03/06/2013, 11h25
  2. transfert de données d'une feuille à d'autres
    Par cline01 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 13/07/2010, 22h36
  3. Réponses: 2
    Dernier message: 09/12/2009, 17h51
  4. Macro transfert de données d'une feuille Excel à une autre
    Par marion2 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 25/11/2009, 14h20
  5. Macro de transfert de données d'une feuille active vers 1 autre
    Par M8407108 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 03/12/2007, 16h27

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