Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

warum fehlermeldung?

Forumthread: warum fehlermeldung?

warum fehlermeldung?
23.02.2005 11:09:36
dunya
Ich habe folgendes Makro:

Sub makro()
Dim fn
Dim arbeitsmappe As String
Dim datei As String
fn = Application.GetOpenFilename(FileFilter:="Textdateien,*.txt", Title:="Bitte Datei auswählen")
Application.ScreenUpdating = False
arbeitsmappe = ActiveWorkbook.Name
If fn = False Then
MsgBox "Benutzerabbruch"
Exit Sub
Else
Workbooks.Open fn
Workbooks.OpenText Filename:= _
fn _
, Origin:=xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier _
:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:= _
False, Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(1, 1) _
, DecimalSeparator:=".", ThousandsSeparator:=" "
Range("A:A").Copy Workbooks(arbeitsmappe).ActiveSheet.Range("iv1").End(xlToLeft).Offset(0, 0)
ActiveWorkbook.Close False
End If
Application.ScreenUpdating = True
End Sub

das makro funktioniert eigentlich, aber ich bekomme immer eine fehlermeldung, wenn ich excel neu starte und anschließend das makro zum ersten mal aufrufe. beim zweiten aufruf klappt dann alles wieder.
(fehlermeldung: index außerhalb des gültigen bereichs)
folgender befehl wird dann gekennzeichnet:
Range("A:A").Copy Workbooks(arbeitsmappe).ActiveSheet.Range("iv1").End(xlToLeft).Offset(0, 0)
kann mir jemand weiterhelfen?
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: warum fehlermeldung?
Nike
Hi,
es geht nur ein open
entweder
Workbooks.Open fn
oder
Workbooks.OpenText Filename:= _
ansonsten mal so versuchen:

Sub makro()
dim wkb as workbook
dim wks as worksheet
Dim fn as Variant
Dim arbeitsmappe As String
Dim datei As String
fn = Application.GetOpenFilename(FileFilter:="Textdateien,*.txt", Title:="Bitte Datei auswählen")
Application.ScreenUpdating = False
If fn = False Then
MsgBox "Benutzerabbruch"
Exit Sub
Else
set wkb = activeworkbook
set wks = activeworksheet
'Workbooks.Open fn
Workbooks.OpenText Filename:= _
fn _
, Origin:=xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier _
:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:= _
False, Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(1, 1) _
, DecimalSeparator:=".", ThousandsSeparator:=" "
ActiveWorkbook.Range("A:A").Copy wks.Range("IV:IV")
ActiveWorkbook.Close False
set wkb = nothing
set wks = nothing
End If
Application.ScreenUpdating = True
End Sub

Bye
Nike
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige