Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1452to1456
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

Import Daten aus anderem Sheet mittels Listbox

Import Daten aus anderem Sheet mittels Listbox
26.10.2015 20:08:23
Manuel

Hey Leute,
wie schon in einem anderen Beitrag versucht zu erklären, bin ich auf der Suche nach der Lösung wie ich in einem Excelsheet über eine Userform neue Daten importieren kann.
Dabei soll bei Klick auf einen Button die notwendige Datei zum Import ausgewählt haben, im Anschluss sollte sich dann die Userform öffnen und in deren Listbox alle Tabellenblätter der vorher ausgewählte Datei enthalten.
Die entsprechenden Tabellenblätter können dann ausgewählt werden und sollen alle in eine Tabelle (in der aktuellen datei) nacheinander reinkopiert werden.
Kann mir da irgendeiner behilflich sein??
Ich habe überhaupt keine Ahnung wo ich anfangen soll.
Hier jedoch meine ersten Versuche: https://www.herber.de/bbs/user/101044.xlsm
Vielen Dank euch allen!
Grüße Manuel

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Import Daten aus anderem Sheet mittels Listbox
27.10.2015 00:59:21
Esmo
Du musst erst mal die andere Datei öffnen:
Private Sub UserForm_Initialize()
'Namen der sichtbaren Tabellen in Listenauswahl einlesen
Dim fileToOpen As Variant
' Aus welcher Datei?
fileToOpen = Application.GetOpenFilename _
("Spreadsheet Files (*.txt;*.xls;*.xlsx;*.dat), *.txt;*.xls;*.xlsx;*.dat,All  _
Files (*.*),*.*", , _
"Datei zum Upload auswählen", , False)
If fileToOpen <> False Then
Workbooks.Open Filename:=fileToOpen
Else
Exit Sub
End If
With Me.ListBox_Tabellen
.Clear
For Each blatt In ActiveWorkbook.Sheets
If blatt.Visible = xlSheetVisible Then
.AddItem blatt.Name
End If
Next
End With
End Sub

Gruß
Ralph

Anzeige
AW: Import Daten aus anderem Sheet mittels Listbox
27.10.2015 11:57:16
Manuel
Hallo Ralph,
danke für deine Hilfe, ich bekomme bei diese Spalte einen Syntaxfehler angezeigt:
fileToOpen = Application.GetOpenFilename _
("Spreadsheet Files (*.txt;*.xls;*.xlsx;*.dat), *.txt;*.xls;*.xlsx;*.dat,All _
Files (*.*),*.*", , _
"Datei zum Upload auswählen", , False)
Was muss ich verändern das ich den Code übernehmen kann?
Grüße

AW: Import Daten aus anderem Sheet mittels Listbox
27.10.2015 17:10:15
Esmo
Hallo Manuel,
Die Variable FileToOpen ist definiert? Versuche mal
fileToOpen = Application.GetOpenFilename _
("Spreadsheet Files (*.txt;*.xls;*.xlsx;*.dat)," & _
" *.txt;*.xls;*.xlsx;*.dat,All Files (*.*),*.*", , _
"Datei zum Upload auswählen", , False)

Hintergrund: Wir haben eine Zeichenkette von "Spreadsheet ..... bis *.*". Wurde umgebrochen, von daher müssen wir die Zeichenkette bewahren.
Gruß
R

Anzeige
AW: Import Daten aus anderem Sheet mittels Listbox
27.10.2015 19:28:34
Manuel
Hey Ralph!
Danke, das klappt echt super! Hast du vielleicht noch eine Lösung wie ich die Tabellen, die ich in der Listbox auswähle, alle kopieren kann in ein Tabellenblatt ("Upload") in meiner Ursprungsdatei?
Also so das nachher alle ausgwählte Tabellen kopiert werden und untereinander im Tabellenblatt Upload eingefügt werden?
Liebe Grüße,
Manuel

AW: Import Daten aus anderem Sheet mittels Listbox
29.10.2015 01:12:29
Esmo
Hallo Manuel,
Bitte drück' das genau aus:
Du willst die Inhalte der ausgewählten Tabellen aus der Listbox dann in das Tabellenblatt "Upload" kopieren und zwar einfach hintereinander, so daß Du dann nachher eine große Tabelle hast?
Man kann Dir einfacher eine Lösung vorschlagen, wenn man von Anfang genau weiß, was Du erreichen willst.
Gruß
Ralph

Anzeige
AW: Import Daten aus anderem Sheet mittels Listbox
29.10.2015 22:19:04
Manuel
Hallo Ralph,
okay gerne ich versuche es einmal.
Du hast mir ja schon ein Makro mit Userform erstell gehabt, mit dem ich eine Excel datei öffnen kann. Die Tabellennamen dieser Datei werden ja dann in die Listbox geschrieben, so das man sie auswählen kann. Jetzt möchte ich im nächsten Schritt, dass, wenn man eine Auswahl getroffen hat (Bspw. Tabelle1, Tabelle3 und Tabelle10 ausgewählt) auf den Button "Upload" der Userform klickt und die ausgewählten Tabellenblätter aus der Listbox (in meinem Beispiel Tabelle1,3,10) in die aktuelle Excel Datei kopiert werden. So, dass die Tabelle1,3,10 in der aktuellen Excel Datei in die Tabelle "Upload" nacheinander reinkopiert werden. Die Tabelle Upload hat bereits überschriften und die anderen Tabellen sollen dann ab Zeile 2 eingefügt werden. Die zu kopierenden Tabellen müssen kopiert werden von Spalte A bis S.
Konntest du verstehen was ich genau will, aber leider nicht selbst hinbekomme?
Grüße,
Manuel

Anzeige
AW: Import Daten aus anderem Sheet mittels Listbox
30.10.2015 18:12:45
Esmo
Moin Manuel,
ich gehe jetzt noch davon aus, daß in den ausgewählten Tabellenblättern die Daten immer in A1 beginnen und zusammenhängend sind. Dann kann ich sie nämlich mit Blatt.Range("A1").currentregion auswählen.
Damit dann:
Sub Blätter_kopieren()
Dim lngIndex As Long
Dim zielblatt As Worksheet
Dim zielzelle As Range
' Ziel definieren
Set zielblatt = ThisWorkbook.Sheets("Upload")
Set zielzelle = zielblatt.Range("A" & zielblatt.Range("A1").CurrentRegion.Rows.Count + 1)
With Me.ListBox_Tabellen
For lngIndex = 0 To .ListCount - 1
If .Selected(lngIndex) Then
' dies ist selectiert, also kopieren (ohne Kopfzeile):
With Sheets(.List(lngIndex)).Range("A1").CurrentRegion
.Offset(1, 0).Resize(.Rows.Count - 1, .Columns.Count).Copy _
Destination:=zielzelle
' Zielzelle verschieben
Set zielzelle = zielzelle.Offset(.Rows.Count - 1)
End With
End If
Next
End With
' Userform verstecken
Me.Hide
End Sub
Schönes WE
Ralph

Anzeige
AW: Import Daten aus anderem Sheet mittels Listbox
31.10.2015 17:36:07
Manuel
Perfekt, vielen Dank Ralph, dir auch ein schönes Wochenende! :)

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige