Arbeitsblätter aktivieren
06.12.2005 20:13:44
F Zap
ich öffne durch betätigen eines CommandButtons eine zweite Datei,
lese Werte aus dieser Datei aus, und kopiere sie in die erste
Datei. Das klappt auch.
Es gibt nur ein Problem, wenn schon mehrere Blätter in der ersten
Datei vorhanden sind.
Nun habe ich versucht, im Code den Namen des Blattes auf der der
CommandButton ist auszulesen(dieser ist nicht immer gleich),
und beim kopieren der Werte von Datei zwei, dieses Blatt wieder
anzusprechen durch ersetzen der Zeile: Windows(2).Activate durch
Worksheets("name").Activate.
Da habe ich es mir wohl zu einfach gemacht, denn das funktioniert nicht.
Kann mir jemand sagen wie das geht???
Mit freundlichen Grüßen Frank
Dim var As Variant
Dim sFiles As String
Dim ende As Variant 'letzter wert import sheet
Dim endea As Variant 'letzter wert blanko sheet zeile a
Dim name As String 'name vom blanko Sheet
name = ActiveSheet.name
Cells(1, 15) = name
ChDir ("c:\")
sFiles = "TRA Files (*.TRA), *.,"
var = Application.GetOpenFilename(sFiles) 'var = pfad und Dateiname
If var = False Then
MsgBox "keine Datei angewählt"
Exit Sub
End If
Workbooks.OpenText Filename:=var, Origin:= _
xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, Comma:=True, FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1))
ende = Sheets(1).Cells(Rows.Count, 2).End(xlUp).Row
Sheets(1).Range("a3:b" & ende).Copy
Windows(2).Activate
ActiveSheet.Cells(11, 1).Activate
ActiveSheet.Paste
Cells(1, 1) = var
Windows(2).Activate
Application.CutCopyMode = False
ActiveWindow.Close
endea = Sheets(1).Cells(Rows.Count, 1).End(xlUp).Row
Sheets(1).Range("d20200:a" & endea).Delete
Application.ScreenUpdating = True
Range("A3").Select
MsgBox "Werte sind übertragen"
End Sub