Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
900to904
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
900to904
900to904
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Beim Import Datei nicht zweimal öffnen

Beim Import Datei nicht zweimal öffnen
05.09.2007 09:32:00
maruseru
Hallo zusammen
Aufgrund der guten Hilfe hier im Forum benutze ich unenstehenden Code um aus einer zu öffnenden Datei Zeilenweisen Daten aus verschiedenen Arbeitsblätter in einer anderen Datei zu importieren.
Nun bin ich daran kleine "Unschönheiten" zu beseitigen. So habe ich das Macro kopiert und abgeändert, dass die Daten aus dem anderen Tabellblatt eingelesen werden können.
Wie kann ich verhindern, das die zu öffnende Datei zweimal angegeben werden muss?
Danke und Gruss
Maruseru

Sub REQUESTER()
Dim wbQuelle As Workbook, wsQuelle As Worksheet
On Error GoTo errorExit
Application.Dialogs(xlDialogOpen).Show
Set wbQuelle = ActiveWorkbook
Set wsQuelle = wbQuelle.Worksheets("02_Requester")
With wsQuelle
.Range(.Cells(4, 1), .Cells(4, 57)).Copy
ThisWorkbook.Worksheets("Requester").Cells(Rows.Count, 2).End(xlUp).Offset(1, 0). _
PasteSpecial Paste:=xlValues
End With
Call SCOPING
errorExit:
ThisWorkbook.Activate
End Sub



Sub SCOPING()
Dim wbQuelle As Workbook, wsQuelle As Worksheet
On Error GoTo errorExit
Application.Dialogs(xlDialogOpen).Show
Set wbQuelle = ActiveWorkbook
Set wsQuelle = wbQuelle.Worksheets("04_Scoping")
With wsQuelle
.Range(.Cells(3, 2), .Cells(3, 16)).Copy
ThisWorkbook.Worksheets("Scoping").Cells(Rows.Count, 2).End(xlUp).Offset(1, 0). _
PasteSpecial Paste:=xlValues
End With
errorExit:
ThisWorkbook.Activate
End Sub


3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Beim Import Datei nicht zweimal öffnen
05.09.2007 09:45:25
sergiesam
Hi,
indem du eine Variable verwendest, die über beide funktionen geht - Modulvariable:
Option Explicit
Dim Dateiname as string

Sub REQUESTER()
Application.Dialogs(xlDialogOpen).Show
Set wbQuelle = ActiveWorkbook
Dateiname = wbquelle.path & "\" & wbquelle.name
End Sub



Sub SCOPING
' Application.Dialogs(xlDialogOpen).Show entfällt!!
workbooks.open dateiname
Set wbQuelle = ActiveWorkbook
End Sub


lg,
Sam

AW: Beim Import Datei nicht zweimal öffnen
05.09.2007 14:08:00
maruseru
Hallo Sam
Es zeigt mal wieder hier gibt es absolute Profis und meine Kenntnisse sind wirklich sehr bescheiden.
Leider funktioniert der Code nicht im zweiten Teil siehe fette, kursive Zeile im Code.
Danke und Gruss
Maruseru

Sub SCOPING()
Dim wbQuelle As Workbook, wsQuelle As Worksheet
Dim Dateiname As String
'On Error GoTo errorExit
'Application.Dialogs(xlDialogOpen).Show
Workbooks.Open Dateiname   Runtime Error 1004 und diese Zeile ist im VB Editor  _
gelb markiert.
Set wbQuelle = ActiveWorkbook
Set wsQuelle = wbQuelle.Worksheets("04_Scoping")
With wsQuelle
.Range(.Cells(3, 2), .Cells(3, 16)).Copy
ThisWorkbook.Worksheets("Scoping").Cells(Rows.Count, 2).End(xlUp).Offset(1, 0). _
PasteSpecial Paste:=xlValues
End With
errorExit:
ThisWorkbook.Activate
Call FORMATIERUNG_S
End Sub


Anzeige
AW: Beim Import Datei nicht zweimal öffnen
05.09.2007 15:40:37
sergiesam
Hi,
das liegt wahrscheinlich daran, dass "dateiname" noch keinen Wert hat - dass also scoping vor requester aufgerufen wurde.
in abhängigkeit kannst du ja folgendes machen: wenn dateinname noch keinen Wert hat, dann ruf Dialogs auf.

Sub REQUESTER()
if Dateiname = "" then
Application.Dialogs(xlDialogOpen).Show
Set wbQuelle = ActiveWorkbook
Dateiname = wbquelle.path & "\" & wbquelle.name
else
Workbooks.open dateiname
set wbQuelle = ActiveWorkbook
end if
End Sub



Sub SCOPING
if Dateiname = "" then
Application.Dialogs(xlDialogOpen).Show
Set wbQuelle = ActiveWorkbook
Dateiname = wbquelle.path & "\" & wbquelle.name
else
Workbooks.open dateiname
set wbQuelle = ActiveWorkbook
end if
End Sub


lg
sam

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige