Microsoft Excel

Herbers Excel/VBA-Archiv

Datenimport | Herbers Excel-Forum


Betrifft: Datenimport von: Reinhardt Springer
Geschrieben am: 15.10.2008 14:13:12

Hallo.
Ich möchte gerne Daten aus einer Datei auslesen, die im Workbook OPEN immer auf das erste Tabellenblatt geht.

Im Archiv habe ich die u.a.

Sub gefunden, die Daten nur aus dem ersten TB auslesen kann.

Sub DatenImport()
   Dim rngTarget As Range
   Set rngTarget = Range("b1:b20")
   Application.ScreenUpdating = False
   Workbooks.Open "C:\Dokumente und Einstellungen\RSpringer\Mappe2.xls"
    rngTarget.Value = Range("b1:b20").Value
   Application.DisplayAlerts = False
   ActiveWorkbook.Close savechanges:=False
   Application.DisplayAlerts = True
End Sub





Meine Daten stehen aber im 2. bzw. 3. Blatt.

Wer kann mir bitte helfen??

Gruß Reinhardt.

  

Betrifft: AW: Datenimport von: Ramses
Geschrieben am: 15.10.2008 15:08:42

Hallo

Sub DatenImport()
   Dim rngTarget As Range

Dim tarWks as Worksheet
Set tarWks = Worksheets("Tabelle2")
   Set rngTarget = tarwks.Range("b1:b20")


   Application.ScreenUpdating = False
   Workbooks.Open "C:\Dokumente und Einstellungen\RSpringer\Mappe2.xls"
    rngTarget.Value = Range("b1:b20").Value
   Application.DisplayAlerts = False
   ActiveWorkbook.Close savechanges:=False
   Application.DisplayAlerts = True
End Sub



sollte eigentlich tun

Gruss Rainer


  

Betrifft: AW: Datenimport von: Erich G.
Geschrieben am: 15.10.2008 16:23:03

Hallo Reinhardt,
meinst du das vielleicht so?

Sub DatenImport()
   Dim rngTarget As Range

   Set rngTarget = Range("b1:b20")
   Application.ScreenUpdating = False
   Workbooks.Open "C:\Dokumente und Einstellungen\RSpringer\Mappe2.xls"
   rngTarget.Value = Sheets(2).Range("b1:b20").Value
   ActiveWorkbook.Close savechanges:=False
   Application.ScreenUpdating = True
End Sub

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort


  

Betrifft: AW: Datenimport von: Erich G.
Geschrieben am: 16.10.2008 08:49:19

Hallo Reinhardt,
diese Antwort bezieht sich auf deine Frage im Thread https://www.herber.de/forum/messages/1016720.html
Warum bist du mit deiner Rückfrage nicht hier im Thread geblieben? Und warum hast du auf meinen Vorschlag
https://www.herber.de/forum/messages/1016609.html nicht geantwortet?

Die folgende Prozedur überträgt
Daten von Mappe2.xls, Tabelle2, Bereich b1:b30 in Mappe1, Tabelle1, Bereich b1:b30,
Daten von Mappe2.xls, Tabelle3, Bereich b1:b10 in Mappe1, Tabelle1, Bereich b31:b40.

Hast du dir das so ungefähr vorgestellt?

Sub DatenImport()
'   Application.ScreenUpdating = False ' nach dem Test aktivieren
   Workbooks.Open "C:\Dokumente und Einstellungen\RSpringer\Eigene Dateien\" & _
      "05 Excel\Mappe2.xls", UpdateLinks:=0, ReadOnly:=True
   With ThisWorkbook.Sheets("Tabelle1")
      .Range("b1:b30") = ActiveWorkbook.Sheets("Tabelle2").Range("b1:b30").Value
      .Range("b31:b40") = ActiveWorkbook.Sheets("Tabelle3").Range("b1:b10").Value
   End With
   ActiveWorkbook.Close savechanges:=False
   Application.ScreenUpdating = True
End Sub

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort