Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro in Personl.xls nur in Datfile starten

Forumthread: Makro in Personl.xls nur in Datfile starten

Makro in Personl.xls nur in Datfile starten
03.03.2003 18:49:13
Andy
Ein Messprogramm zeichnet einen Datfile auf, der automatisch nach Beendigung der Messung in Excel geladen wird. Zeitgleich wird die Personl.xls gestartet um ein Makro (Auto_open) auf diesen Datfile anzuwenden. Mein Problem ist, dass das Makro in der Personl.xls abgearbeitet wird und nicht im Datfile. Daher die Frage, wie bring ich dem Makro allgemein bei, dass der *.datfile das aktive Fenster darstellt, um im Anschluß das Makro ausschliesslich auf diesen anzuwenden. Für Quellcode und Hilfe wäre ich dankbar.
Ciao Andy


Anzeige

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

Betreff
Datum
Anwender
Anzeige
Re: Makro in Personl.xls nur in Datfile starten
03.03.2003 18:54:28
Ramses

Hallo,

zeig mal den Code den du ja bereits hast.
Man muss das Rad ja nicht neu erfinden.

Gruss Rainer

Re: Makro in Personl.xls nur in Datfile starten
04.03.2003 08:12:31
Andy

Sub Auto_Open()
Dim wb As Variant
Dim DateiName As String
For Each wb In Workbooks
If wb.Name = "personl.xls" Then
wb.Deactivate
End If
Next wb

With Application.FileSearch
.NewSearch
.LookIn = "D:\Andy\"
.SearchSubFolders = False
.Filename = DateiName & "*.dat"
End With

Workbooks.OpenText Filename:=DateiName, Origin:=xlWindows, _
StartRow:=1, DataType:=xlDelimited, _ TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:=True, Tab:=False, Semicolon:=True, Comma:=False, _
Space:=False, Other:=False, FieldInfo:=Array(1, 1), _
TrailingMinusNumbers:=True

Call Makro xy

In dem Absatz Workbooks.Opentext.. ist mit DateiName der Datfile gemeint, aber es funktioniert nicht und ich weiß nicht warum?

P.S. Ich mache meine ersten Gehversuche in Sachen Programmierung

Anzeige
Re: Makro in Personl.xls nur in Datfile starten
04.03.2003 09:26:49
Ramses

Hallo Andy,

du hast zwei grundsätzliche Fehler drin:
Du definierst die Variable "DateiName", diese wird aber nie gefüllt sondern als Suchkriterium verwendet und anschliessend auch noch zum öffnen.
Die Variable "Dateiname" enthält "", also nichts.
Normalerweise muss sowas am Anfang gemacht werden:

Dateiname = "Mein Name.dat"

Mit der FileSearch-Methode erhältst du leider nichts, weil die nicht ausgeführt wird, und wie willst du auf das Ergebnis reagieren.

Hier einmal ein Beispiel wie es für deine Anwendung gebraucht werden könnte:


Sub Auto_Open()
Dim wb As Workbook
Dim DateiName As String
'----
'Dieses Segment ist nicht nötig, weil die PERSONL.XLS
'immer ausgeblendet und deaktiviert gestartet wird.
'Sollte Sie das nicht tun, einmal mit Fenster - Ausblenden
'und anschliessend EXCEL beenden. Beim nächsten Start ist 
'sie ausgeblendet
'
'For Each wb In Workbooks
'If wb.Name = "personl.xls" Then
'wb.Deactivate
'End If
'Next wb
DateiName = "Deine_Datei.dat"


With Application.FileSearch
    .LookIn = "D:\Andy"
    .SearchSubFolders = False
    .Filename = DateiName
    '------
    'Hier musst die Execute-Anweisung starten
    'Sonst wird die FileSearch-Methode gar nicht
    'ausgeführt
    If .Execute() > 0 Then
        Msgbox "Datei Gefunden"
        'Was du nun machen willst ist deine Sache,
        'normalerweise kommt hier die Workbook.Open
        'Anweisung hin
         Workbooks.OpenText Filename:=DateiName,  Origin:=xlWindows, _
         StartRow:=1, DataType:=xlDelimited, _ TextQualifier:=xlDoubleQuote, _
         ConsecutiveDelimiter:=TrueTab:=False, Semicolon:=True, Comma:=False, _
         Space:=False, Other:=False, FieldInfo:=Array(1, 1), _TrailingMinusNumbers:=True
     Else
         MsgBox "Datei wurde nicht gefunden
         Exit Sub
     End If
End Sub 

     Code eingefügt mit Syntaxhighlighter 1.16


Gruss Rainer
End If
End With


Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

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