• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Macro om bestand te openen en inhoud te kopiëren

Status
Niet open voor verdere reacties.

Gert Bouwmeeste

Verenigingslid
Lid geworden
28 nov 2007
Berichten
827
Goedemorgen,

Maandelijks komt er een download uit een Mainframe-bestand. Dat ziet er uit als in het voorbeeldbestand. Iedere maand heet het aangemaakte bestand (in .xlsx-formaat) anders.

Ik zoek een macro waarbij ik kan kiezen welk bestand ik wil openen en die inhoud van dat bestand (één tabblad, in z'n geheel, zelfde kolomindeling) kopieert naar het tabblad "Import" in een ander Excel-bestand.

Ik heb dit:
Code:
Sub KiesBestand()

' Ga naar het blad "Import" van het moederbestand
    Sheets("Import").Select
    
' Selecteer alle cellen en wis de inhoud
    Cells.Select
    Selection.ClearContents
    Range("A1").Select
    
   
[COLOR="#FF0000"][B]' Hier moet dus iets komen waarbij ik het juiste downloadbestand kan kiezen
    '< Kies de juiste map en het juiste bestand>
    '< Open het gekozen bestand>[/B][/COLOR]
    
' Maak "Bewerken" in het downloadbestand mogelijk
    Application.ActiveProtectedViewWindow.Edit
    
'Selecteer het hele tablad
    Cells.Select
    Selection.Copy
    Windows("Moederbestand.xlsm").Activate
    ActiveSheet.Paste

End Sub

Wie kan/wil mij even op weg helpen?

Dank alvast!
Gert
 

Bijlagen

Voor het rode gedeelte:
Code:
    With Application.FileDialog(msoFileDialogOpen)
        .InitialFileName = "C:\Diversen" [COLOR="#008000"]'Eventueel aanpassen[/COLOR]
        .Title = "Selecteer bestand"
        .AllowMultiSelect = False
        If .Show Then
            Workbooks.Open .SelectedItems(1)
        End If
    End With
 
Code:
Sub KiesBestand()
    'wis inhoud
    Sheets("Import").Cells.ClearContents
    'open bestand
    With Application.FileDialog(msoFileDialogFilePicker)
        .AllowMultiSelect = False
        .Filters.Add "Excel files", "*.xlsx; *.xlsm; *.xls; *.xlsb", 1
        .Show
        Workbooks.Open = .SelectedItems.Item(1)
    End With

    'selecteer en kopie
    ActiveWorkbook.ActiveSheet.Cells.Copy
    ThisWorkbook.Sheets("Import").Cells(1, 1).PasteSpecial
    ActiveWorkbook.Close False
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan