Dansk Regneark Forum
  Hjælp Hjælp  Søg i forum   Arrangementer   Opret ny bruger Opret ny bruger  Log ind Log ind


Emne lukketHjælp til ændring i macro der copy/paster

 Besvar Besvar
Forfatter
Hartig Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 14.Dec.2018
Land: Danmark
Status: Offline
Point: 42
Direkte link til dette indlæg Emne: Hjælp til ændring i macro der copy/paster
    Sendt: 08.Mar.2019 kl. 07:22
Hej.
 
Jeg har fundet en macro, som jeg har ændret lidt i, så den fungerer, men jeg kunne godt tænke mig at den blev endnu "smartere"
 
Macroen kopierer faste celler fra 1 ark og indsætter det i et andet ark.
 
Som macroen virker nu, så skal jeg ind og vælge hvilket ark der skal kopieres fra (selvom det altid er det samme) + jeg skal klikke "ok" til de forindtastede ønskede celler der skal kopieres.
 
Kan man få den til altid at kopiere fra C:\Manuel database\DK_info.xlsx og fast vælge den range der er fortrykt, i stedet for man skal klikke "ok" i begge ark?
 
 
Macroen ser således ud:
 
 
Sub ImportDatafromotherworksheet()
    Dim wkbCrntWorkBook As Workbook
    Dim wkbSourceBook As Workbook
    Dim rngSourceRange As Range
    Dim rngDestination As Range
    Set wkbCrntWorkBook = ActiveWorkbook
    With Application.FileDialog(msoFileDialogOpen)
        .Filters.Clear
        .Filters.Add "Excel 2007-13", "*.xlsx; *.xlsm; *.xlsa"
        .AllowMultiSelect = False
        .Show
        If .SelectedItems.Count > 0 Then
            Workbooks.Open .SelectedItems(1)
            Set wkbSourceBook = ActiveWorkbook
            Set rngSourceRange = Application.InputBox(prompt:="Select source range", Title:="Source Range", Default:="$A$2:$L$4000", Type:=8)
            wkbCrntWorkBook.Activate
            Set rngDestination = Application.InputBox(prompt:="Select destination cell", Title:="Select Destination", Default:="'Hentet data'!$A$2:$L$4000", Type:=8)
            rngSourceRange.copy rngDestination
            rngDestination.CurrentRegion.EntireColumn.AutoFit
            wkbSourceBook.Close False
        End If
    End With
   
End Sub
Til top



Til top
Hartig Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 14.Dec.2018
Land: Danmark
Status: Offline
Point: 42
Accepteret svar Accepteret svar
Direkte link til dette indlæg Sendt: 09.Mar.2019 kl. 15:44
Jeg har selv fundet en løsning.  Smile
 
 
Private Sub Hent_data_Click()
   
'copy data from closed workbook to active workbook
 Dim xlApp As Application
 Dim xlBook As Workbook
 Dim Sh As Object
 Set xlApp = CreateObject("Excel.Application")
'Path source workbook
 Set xlBook = xlApp.Workbooks.Open("C:\Manuel database\DK_info.xlsx")
xlBook.Sheets("DK_info").Range("A2:L4000").Copy
 xlApp.DisplayAlerts = False
 xlBook.Close
 xlApp.Quit
 Set xlBook = Nothing
 Set xlApp = Nothing
 Set xlBook = ActiveWorkbook
 Set Sh = xlBook.Sheets("Hentet data")
'Sh.Activate
 Range("A2").Select
 Sh.Paste
 Range("A1").Select
End Sub
Til top
 Besvar Besvar

Skift forum Forum tilladelser Se dropdown

© 2010 - 2024 Dansk Regneark Forum - en del af Excel-regneark.dk