WinFuture-Forum.de: Excel-datei Per Makro Importieren - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Office
Seite 1 von 1

Excel-datei Per Makro Importieren name des Tabellenblattes herausfinden?


#1 Mitglied ist offline   camo 

  • Gruppe: aktive Mitglieder
  • Beiträge: 26
  • Beigetreten: 24. September 07
  • Reputation: 0

  geschrieben 27. Februar 2008 - 15:31

Hallo!
Ich habe ein Makro geschrieben, das bewirkt, dass beim öffnen der Arbeitsmappe ein Datei-Öffnen Dialog geöffnet wird, in der man eine Datei auswählen kann die dann importiert wird.
Das funktioniert auch soweit. Jetzt is nur das Problem hinzugekommen, dass die Tabellenblätter jedes mal einen anderen Namen haben (immer nur ein Tabellenblatt/Arbeitsmappe).
Ist es irgendwie möglich, dass man per Makro herrausfinden kann, wie dieses Tabellenblatt heißt, bzw automatisch das erste Tabellenblatt importieren?

hier mal der Code zu der Funktion:
(das Tabellenblatt heißt hier "RAEDERUREIFENLEAR")

Function Importieren(ByVal datei As String)

	Cells.Select
	Selection.ClearContents
	
  
	Range("A2").Select
	
	With ActiveSheet.QueryTables.Add(Connection:=Array( _
		"OLEDB;Provider=Microsoft.Jet.OLEDB.4.0;Passwor
d="""";User ID=Admin;Data Source=" _
, _
		 datei _
, _
		";Mode=Share Deny Write;Extended Properties=""HDR=YES;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Pa" _
		, _
		"th="""";Jet OLEDB:Database Password="""";Jet OLEDB:Engine Type=35;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Op" _
		, _
		"s=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="""";Jet OLEDB:Create System Database=False;Jet OLEDB:Enc" _
		, _
		"rypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=Fa" _
		, "lse"), Destination:=Range("A2"))
		.CommandType = xlCmdTable
		.CommandText = Array("RAEDERUREIFENLEAR$")
		.Name = "..."
		.FieldNames = True
		.RowNumbers = False
		.FillAdjacentFormulas = False
		.PreserveFormatting = True
		.RefreshOnFileOpen = False
		.BackgroundQuery = True
		.RefreshStyle = xlInsertDeleteCells
		.SavePassword = True
		.SaveData = True
		.AdjustColumnWidth = True
		.RefreshPeriod = 0
		.PreserveColumnInfo = True
		.SourceDataFile = _
		datei
		.Refresh BackgroundQuery:=False
	End With
	

End Function


So, ich hoffe ich habe mein Problem verständlich beschrieben.
Ich wäre für jede Hilfe dankbar :-)

Gruß,
camo
0

Anzeige



#2 Mitglied ist offline   camo 

  • Gruppe: aktive Mitglieder
  • Beiträge: 26
  • Beigetreten: 24. September 07
  • Reputation: 0

geschrieben 28. Februar 2008 - 08:27

So. Hat sich erledigt. Habs nach längerem Probieren doch noch hingekriegt :-)

Workbooks.Open (datei)
Tabelle = Workbooks(2).Worksheets(1).Name & "$"
Workbooks(2).Close

0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0