2016-12-12 3 views
1

Ich bin nicht der größte mit VBA und habe es seit Jahren nicht berührt, daher nehme ich Tutorials, so hoffe ich, jemand kann helfen!VBA - Pull-Info von einer Arbeitsmappe zu einer anderen

Auf lange Sicht zu Ich versuche, in der folgenden Reihenfolge: (! Fertig)

  • öffnen Sie ein Fenster Explorer in einem Excel-Dokument über einen Button
  • ein Excel-doc wählen (Hoffentlich ausgewählt mehrere Dokumente auf lange Sicht)
  • Pull Informationen aus einer bestimmten Zeile/Spalte eines Blattes allerdings auf die ursprüngliche Excel-Buch

Bisher habe ich abgekocht/gehackt und verändert und fanden die folgende (Danke JMA x auf dieser Seite)

Sub test() 
    Dim wb As Workbook, wb2 As Workbook 
    Dim ws As Worksheet 
    Dim vFile As Variant 

    'Set source workbook 
    Set wb = ActiveWorkbook 
    'Open the target workbook 
    vFile = Application.GetOpenFilename("Excel-files,*.xls", _ 
     1, "Select One File To Open", , False) 
    'if the user didn't select a file, exit sub 
    If TypeName(vFile) = "Boolean" Then Exit Sub 
    Workbooks.Open vFile 
    'Set targetworkbook 
    Set wb2 = ActiveWorkbook 

    'For instance, copy data from a range in the first workbook to another range in the other workbook 
    wb2.Worksheets("Sheet1").Range("C3:D4").Value = wb.Worksheets("Sheet3").Range("A1:B2").Value 
End Sub 

Für mich jedoch um aussieht, wenn es das Dokument Excel öffnet es sich außerhalb der Reichweite Index 'Nachricht mit dem zurückkommt.

Was fehlt mir? Die Zellen und die Namensgebung scheinen mir richtig :(.

Danke,

Dave

+0

Verwenden Sie den Makro-Recorder und Blick auf den Code erzeugt es. Bitte. ;) – nicomp

Antwort

0

Der Fehler, weil ein Name in auf der Sammlungen Arbeitsblatt existiert nicht Arbeitsblatt geworfen wird.

wb2.Worksheets ("Tabelle1")

Arbeitsblätter ("Sheet3")


enter image description here

Verwandte Themen