Copie fuille d'un classeur sur classeur ouvert

boule de neige

XLDnaute Nouveau
Bonsoir le forum,

j'ai trouvé un code sur le forum pour intégrer une feuille d'un fichier sur mon fichier actuel.
Je voudrais modifier ce code pour que la destination de la feuille copié ne soit pas coller sur une nouvelle feuille mais coller une feuille déjà existants dans mon classeur qui s'appelle RG en remplaçant les valeurs déjà actuelles de cette feuille.

voici le code
PHP:
Private Sub CommandButton1_Click() ' RECHERCHE DU CLASSEUR SOURCE

Dim Classeur_choisi As Long
Static Classeur_choisi_bis As String

Select Case UserForm1.CommandButton1.Caption

    Case "Feuille à Copier"
    
        With Application.FileDialog(msoFileDialogOpen)
            .AllowMultiSelect = False
            .Show
                   For Classeur_choisi = 1 To .SelectedItems.Count
                   Workbooks.Open (.SelectedItems(Classeur_choisi))
                   Next Classeur_choisi
        End With
    Classeur_choisi_bis = ActiveWorkbook.Name
        
    ActiveWorkbook.Saved = True ' Pour éviter le message de re-calcul des formules d'une version antérieure.
    
    UserForm1.CommandButton1.Caption = "Copier cette Feuille"
    
    ' ICI L'ON PEUT CHOISIR LA FEUILLE A COPIER
    
    Case "Copier cette Feuille"
    
    ActiveWorkbook.ActiveSheet.Copy after:=ThisWorkbook.Worksheets(ThisWorkbook.Worksheets.Count)
     
    
    Windows(Classeur_choisi_bis).Activate
    Application.DisplayAlerts = False
    ActiveWorkbook.Close
    
    Unload UserForm1
    Sheets("intégration").Select
    Application.DisplayAlerts = True
    ActiveWorkbook.Save

End Select

End Sub

merci de votre aide
 

JCGL

XLDnaute Barbatruc
Re : Copie fuille d'un classeur sur classeur ouvert

Bonjour à tous,

A tester :

VB:
Private Sub CommandButton1_Click()    ' RECHERCHE DU CLASSEUR SOURCE
    Dim Classeur_choisi As Long
    Static Classeur_choisi_bis As String


    Select Case UserForm1.CommandButton1.Caption
    Case "Feuille à Copier"
        With Application.FileDialog(msoFileDialogOpen)
            .AllowMultiSelect = False
            .Show
            For Classeur_choisi = 1 To .SelectedItems.Count
                Workbooks.Open (.SelectedItems(Classeur_choisi))
            Next Classeur_choisi
        End With
        Classeur_choisi_bis = ActiveWorkbook.Name
        ActiveWorkbook.Saved = True    ' Pour éviter le message de re-calcul des formules d'une version antérieure.
        UserForm1.CommandButton1.Caption = "Copier cette Feuille"
        ' ICI L'ON PEUT CHOISIR LA FEUILLE A COPIER
    Case "Copier cette Feuille"
        ActiveWorkbook.ActiveSheet.Copy Sheets("RG").Range("A1")
        Windows(Classeur_choisi_bis).Activate
        Application.DisplayAlerts = False
        ActiveWorkbook.Close
        Unload UserForm1
        Sheets("intégration").Select
        Application.DisplayAlerts = True
        ActiveWorkbook.Save
    End Select
End Sub

A+ à tous
 

Discussions similaires

Statistiques des forums

Discussions
312 493
Messages
2 088 956
Membres
103 990
dernier inscrit
lamiadebz