Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1468to1472
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Excel zu Excel Import

Excel zu Excel Import
16.01.2016 20:36:18
Björn
Hallo,
meine Herausforderung:
Ich möchte aus einer Excel-Datei heraus eine andere Excel-Datei öffnen und Daten kopieren.
Diese befindet sich im gleichen Ordner, der Dateiname ändert sich jedoch regelmäßig. Die zu importierenden Daten befinden sich immer an der gleichen Stelle, auf unterschiedlichen Tabellenblättern.
Die Daten auf dem ersten Tabellenblatt "Kalkulation" werden kopiert, beim Aktivieren des Tabellenblatts "Modell" tritt folgende Fehlermeldung:
Laufzeitfehler 9 Index außerhalb des gültigen Bereichs
(das Tabellenblatt existiert und der Tabellenname ist auch richtig geschrieben).
Hier ist mein VBA Code:
Sub import()
Dim strsource As String
Dim Datum As Date
Dim Text As Variant
Dim Betrag As Single
Dim Proz1, Proz2, Proz3 As Single
ChDir ThisWorkbook.Path
strsource = Application.GetOpenFilename()
Workbooks.Open Filename:=strsource
Text = Cells(2, 1).Value
Datum = Cells(3, 1).Value
Betrag = Cells(4, 1).Value
Worksheets("Modell").Activate
Proz1 = Cells(1, 1).Value
Proz2 = Cells(2, 1).Value
Proz3 = Cells(3, 1).Value
ThisWorkbook.Activate
Cells(1, 1).Value = Text
Cells(2, 1).Value = Datum
Cells(3, 1).Value = Betrag
Cells(7, 1).Value = Proz1
Cells(8, 1).Value = Proz2
Cells(9, 1).Value = Proz3
End Sub

Danke.
Gruß
Björn

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel zu Excel Import
16.01.2016 20:59:50
Sepp
Hallo Björn,
sauber referenzieren, dann passiert das nicht.
Sub import()
Dim objWB As Workbook
Dim strsource As String
Dim Datum As Date
Dim Text As Variant
Dim Betrag As Single
'Du musst jeder Variablen den Typ zuweisen!
Dim Proz1 As Single, Proz2 As Single, Proz3 As Single

ChDir ThisWorkbook.Path

strsource = Application.GetOpenFilename()

If strsource <> CStr(False) Then
  Set objWB = Workbooks.Open(Filename:=strsource)
  With objWB
    With .Sheets("Kalkulation")
      Text = .Cells(2, 1).Value
      Datum = .Cells(3, 1).Value
      Betrag = .Cells(4, 1).Value
    End With
    
    With .Sheets("Modell")
      Proz1 = .Cells(1, 1).Value
      Proz2 = .Cells(2, 1).Value
      Proz3 = .Cells(3, 1).Value
    End With
    'evtl.
    '.Close False
  End With
  
  With ThisWorkbook.ActiveSheet
    .Cells(1, 1).Value = Text
    .Cells(2, 1).Value = Datum
    .Cells(3, 1).Value = Betrag
    .Cells(7, 1).Value = Proz1
    .Cells(8, 1).Value = Proz2
    .Cells(9, 1).Value = Proz3
  End With
End If

Set objWB = Nothing
End Sub

Gruß Sepp

Anzeige
AW: Excel zu Excel Import
16.01.2016 21:30:52
Björn
Danke, alles funktioniert nun! ;-)

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige