Vba copier coller à la suite

alex -  
 alex -
Bonjour,

Voila, je suis nouveau sur VBA et j'aimerais "coller" ou je le souhaite dans ma feuille VBA. Plus précisément, je souhaite coller a la suite des éléments.
La dans mon code, ca écrase mon fichier, donc je ne récupère uniquement, le contenue de mon dernier fichier (CONTREPARTIES(3))

voila mon code:

REMARQUE: CONTREPARTIES étant un tableau de 4 String

For i = 0 To UBound(CONTREPARTIES)
Workbooks(FICHIER_NOM).Worksheets(CONTREPARTIES(i)).Activate

' Créer le fichier
Set fSys = CreateObject("Scripting.FileSystemObject")
Set monFichierTxt = fSys.CreateTextFile(REPERTOIRE_NOM & today & FICHIER_DEST & ".txt")
monFichierTxt.Close

' Ouvrir le fichier
Workbooks.OpenText Filename:=REPERTOIRE_NOM & today & FICHIER_DEST & ".txt"

' Copier les données
Workbooks(FICHIER_NOM).Activate
Sheets(CONTREPARTIES(i)).Cells.Copy

Workbooks(today & FICHIER_DEST & ".txt").Activate
ActiveSheet.Paste

ActiveWindow.Close True
Next

1 réponse

  1. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
     
    Bonjour,

        Application.ScreenUpdating = False
        
        ' Créer le fichier
        Set fSys = CreateObject("Scripting.FileSystemObject")
        Set monFichierTxt = fSys.CreateTextFile(REPERTOIRE_NOM & today & FICHIER_DEST & ".txt")
        monFichierTxt.Close
        ' Ouvrir le fichier
        Workbooks.OpenText Filename:=REPERTOIRE_NOM & today & FICHIER_DEST & ".txt"
        'boucle sur les onglets
        For i = 0 To UBound(CONTREPARTIES)
            'mise en memoire infos
            TInfos = ThisWorkbook.Sheets(CONTREPARTIES(i)).UsedRange
            'premiere cellule vide colonne A
            derlig = Range("A" & Rows.Count).End(xlUp).Row
            If derlig > 1 Then derlig = derlig + 1
            'ecriture infos dans fichier txt
            Range("A" & derlig).Resize(UBound(TInfos, 1), UBound(TInfos, 2)) = TInfos
        Next i


    Application.ScreenUpdating = True
    0
    1. alex
       
      Merci de votre réponse, j'avais trouvé solution à mon problème. La communauté de ce site est vraiment toujours aussi active. Thks !
      0