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

Fenster-/Dateinamen auslesen

Forumthread: Fenster-/Dateinamen auslesen

Fenster-/Dateinamen auslesen
31.05.2008 20:08:00
Jürgen
Hallo liebe Helferlein(s),
hallo ich kopiere mittels Makro Daten aus einer Datei in eine andere.Dabei sind beide geöffnet.
Eine Datei hat den Namen : alle-BT-alle-Typen.xls -- in diese Datei werden die Daten kopiert. Die andere von der die Daten geholt werden (es gibt ca. 25 Dateien), da ist der Dateiname verschieden. Jetzt meine Frage:
Kann ich nicht alle Dateien gleichzeitig öffnen und die Namen der Dateien in eine Variable schreiben ?
(ausser : alle-BT-alle-Typen.xls). hoffe ich habe mich einigermaßen verständlich ausgedrückt.
Danke im voraus Grüße Jürgen
hier mein bisheriges Makro:
Dim bauteil As String
</p><pre>Sub Übersicht_aktualisieren()
'
' Übersicht_aktualisieren Makro
' Makro am 23.05.2008 von JG aufgezeichnet
'
' Tastenkombination: Strg+a
'
a = ThisWorkbook.Name
b = InputBox("Dateiname angeben")
b = b & ".xls"
zeile = ActiveCell.Row + 2
spalte = ActiveCell.Column
zeile2 = 10
zeile3 = 7
Windows(b).Activate
Range("C10").Select
Do While ActiveCell() <> ""
Do While ActiveCell(, 7) = "X"
zeile2 = zeile2 + 1
Range("c" & zeile2).Select
Loop
bauteil = ActiveCell()
Windows(a).Activate
Range("a" & zeile3).Select
Do While ActiveCell() <> "" And ActiveCell() <> bauteil
zeile = zeile + 1
Range("a" & zeile).Select
Loop
If ActiveCell() = "" Then ActiveCell() = bauteil
If ActiveCell(, spalte) <> "" Then ActiveCell(, spalte) = ActiveCell(, spalte) + 1
If ActiveCell(, spalte) = "" Then ActiveCell(, spalte) = 1
zeile2 = zeile2 + 1
Range("a" & zeile3).Select
Windows(b).Activate
Range("c" & zeile2).Select
zeile = zeile3
Loop
End Sub</pre><p>

Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fenster-/Dateinamen auslesen
31.05.2008 20:15:00
Sonnenpeter
Hallo,
vielleicht hilft Dir das weiter?

Sub Test()
Anzahl = Application.Workbooks.Count
If Anzahl = 1 Then Exit Sub
For i = 1 To Anzahl
wksName = Application.Workbooks(i).Name
If wksName = "Test2.xls" Then
End If
If wksName = "Test.xls" Then
Else
Fenster = wksName
End If
Next i
End Sub


Gruß Sonnenpeter

Anzeige
AW: Fenster-/Dateinamen auslesen
31.05.2008 20:33:00
Jürgen
Hallo Sonnenpeter,
werde mal versuchen dein Makro irgendwie einzubinden.
Melde mich dann ob es funktioniert hat.
Danke mal im voraus.
Gruß Jürgen

AW: Fenster-/Dateinamen auslesen
01.06.2008 09:42:00
Jürgen
Hallo Sonnenpeter,
ich habe dein Makro eingebaut. fast alles funktioniert wie gewollt.
Hier noch meine offenen Frage :
- kann ich das .xls in der Variablen entfernen um den Dateinamen (ohne Endung) in eine Zelle einzufügen ?
Danke im voraus
Gruß Jürgen

Anzeige
AW: Fenster-/Dateinamen auslesen
01.06.2008 11:25:00
Heinz
Hi,
füg erstmal komplett ein und dann mit suchen nach: .xls ersetzen durch (leer lassen)
alle Endungen entfernen. Geht auch mit Makro, einfach aufzeichnen.
mfg Heinz

AW: Fenster-/Dateinamen auslesen
01.06.2008 14:45:00
Sonnenpeter
Hallo nochmal,
Option Explicit

Sub OffeneArbeitsmappenAuflisten()
Dim Anzahl, i As Byte
Dim wksName As String
Anzahl = Application.Workbooks.Count
If Anzahl = 1 Then Exit Sub
For i = 1 To Anzahl
wksName = Application.Workbooks(i).Name
Sheets("Test").Cells(i + 1, 1).Value = wksName
Next i
End Sub


OK so?
Gruß Sonnenpeter

Anzeige
AW: Fenster-/Dateinamen auslesen
01.06.2008 15:15:56
Jürgen
Hallo Peter,
erhalte nach einbinden deines 2ten Makros, Laufzeitfehler 9.
Will eigentlich das aus der Variablen b="5649Top.xls" nur das .xls entfernt wird also dann lautet:
b="5649Top" , geht das irgendwie mit Trim ?
Kannst du mir ein gutes VBA Buch empfehlen ? Will sowas auch lernen mit den Application befehlen usw.
Gruß Jürgen

Anzeige
AW: Fenster-/Dateinamen auslesen
01.06.2008 17:21:29
Sonnenpeter
Hallo,
zeig doch mal das Makro.
Was ich eingestellt habe funzt bei mir fehlerfrei.
Gruß Sonnenpeter

AW: Fenster-/Dateinamen auslesen
01.06.2008 18:13:00
Jürgen
Hallo Peter,
habe es so gelöst:
a = Application.Workbooks(i).Name
b = Len(a)
c = Left(a, b - 4)
Danke Gruß Jürgen

AW: Fenster-/Dateinamen auslesen
01.06.2008 18:53:00
Sonnenpeter
Hallo,
Option Explicit

Sub OffeneArbeitsmappenAuflisten()
Dim Anzahl, i As Byte
Dim wksName, c As String
Dim b As Integer
Anzahl = Application.Workbooks.Count
If Anzahl = 1 Then Exit Sub
For i = 1 To Anzahl
wksName = Application.Workbooks(i).Name
b = Len(wksName)
c = Left(wksName, b - 4)
Sheets("Test").Cells(i + 1, 1).Value = c 'Anpassen
Next i
End Sub


Gruß Sp

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