Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1884to1888
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
Inhaltsverzeichnis

Blattnamen holen

Blattnamen holen
27.05.2022 15:08:40
Marcus
Hallo zusammen,
habe folgende Struktur (wenn man davon sprechen kann)
Masterdatei hier wird über mehrere Makros folgendes angestoßen:
- wenn ein neuer Eintrag reinkommt
a. fortlaufende Nummer um eins hochzählen
b. unter dieser Nummer einen Ordner mit dieser Nummer anlegen
c. eine Standardvorlage in diesen kopieren
jetzt mein Wunsch das in der Vorlage Werte aus der Masterdatei stehen:
1. die Nummer des Ordners aus Spalte A
2. Name des Produkts aus Spalte B
für Blatter die sich in einer Maske befinden habe ich einen Code der das kann, aber nciht wenn es sich um verschiedene Arbeitsmappen/Sheets handelt
das wäre der Code der eine Ordner und Hyperlink anlegt:

'     von Marcus Hofpointner
'beide Codes legen Anhand von Namen in der Spalte A einen ORdner in der Struktur an und zu diesem einen Hyperlink
Option Explicit
Private Declare PtrSafe Function MakeSureDirectoryPathExists Lib "imagehlp.dll" ( _
ByVal lpPath As String) As Long
Sub machHyperlinksNurEingeblendete()
Dim lZeile As Long, lLetzteZeile As Long
Dim strWurzel As String, strVerzeichnis As String
'Wurzelverzeichnis festlegen
strWurzel = ActiveWorkbook.Path & "\" '"C:\Users\papa\Desktop\"
'Verweis auf Tabellenblatt (evtl. anzupassen)
With ActiveSheet
'Letzte benutzte Zeile ermitteln
lLetzteZeile = .Columns(1).Find("*", , , , xlByRows, xlPrevious).Row
'Schleife über alle Zeilen (unabhängig, ob ausgeblendet, oder nicht)
For lZeile = 2 To lLetzteZeile
'Nur eingeblendete Zeilen
If Not .Rows(lZeile).Hidden Then
'Verzeichnis, das angelegt werden soll
strVerzeichnis = CStr(.Cells(lZeile, 1).Value)
'Pfad anlegen
If MakeSureDirectoryPathExists(strWurzel & strVerzeichnis & "\") Then
'Hyperlink anlegen
.Hyperlinks.Add Anchor:=.Cells(lZeile, 1), _
Address:=strWurzel & strVerzeichnis, _
ScreenTip:="Öffne " & strVerzeichnis, _
TextToDisplay:=strVerzeichnis
End If
End If
Next
End With
End Sub
Das wäre der Code der einen Unterordner erstellt und die leere Datei reinkopiert

Sub Datei_verschieben_inspektion()
'Dieser Code kopiert eine Datei in die Ordnerstruktur der Tabelle nur wenn ich spalte d der gleiche ordnername drinsteht
Dim Zeilen As Long, Pfad As String, FullPfad As String, i As Long
Dim Vorlage As String
'   Vorlage = "C:\Users\marcu\Desktop\3 Fertig - Kopie\1.txt"
Vorlage = ActiveWorkbook.Path & "\inspektion.xlsx"
'   hier die zele eingeben mit einem buchstaben wo gesucht werden soll
Zeilen = Cells(Rows.Count, "a").End(xlUp).Row
Pfad = ActiveWorkbook.Path & "\"
'   Range("B1")
For i = 1 To Zeilen
'   hier die zele eingeben mit einem zahl wo gesucht werden soll
FullPfad = Pfad & Cells(i, 1) & "\" & Range("ba1") & "\"
If Dir(FullPfad, vbDirectory)  "" Then
FileCopy Vorlage, FullPfad & Dir(Vorlage)
Else
'         MsgBox FullPfad & "   nicht vorhanden"
End If
Next i
End Sub
das wäre der Code den ich angepasst bräuchte um die Infos von Mappe zu Mappe schieben zu können, bitte:
hier wird ja beim anlegen schon der Name des Blattes übergeben, was ich beim anlegen von Mappen nicht hinbekomme

=WENN(ISTFEHLER(TEIL(@ZELLE("Dateiname";A1);FINDEN("]";@ZELLE("Dateiname";A1))+1;255)*1);TEIL(@ZELLE("Dateiname";A1);FINDEN("]";@ZELLE("Dateiname";A1))+1;255);TEIL(@ZELLE("Dateiname";A1);FINDEN("]";@ZELLE("Dateiname";A1))+1;255)*1)
hier wäre der Code der dann die weiteren Werte holt

=SVERWEIS(AF1;Basic!A4:I25;2;FALSCH)
wie gesagt die letzten 2 Codes funktionieren solange sich alles in einer Arbeitsmappe abspielt, bloß wie kann ich das mit Mappen bewerkstelligen?
Danke im voraus - eine Musterdatei wäre zu groß zum schicken
Gruß
Marcus

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Blattnamen holen
28.05.2022 12:17:33
Herbert_Grom
Hallo Marcus,
du meinst also "eine Musterdatei wäre zu groß zum schicken"? Wie wäre es, wenn DU dir die Arbeit machen würdest, die Datei so zu verkleinern, dass sie a der Originalen vom Layout her entspricht und b klein genug ist, sie zu posten? Notfalls kann man Dateien ja auch zippen!
Servus
AW: Blattnamen holen
28.05.2022 21:16:36
Marcus
@Herbert_Grom
du hast recht, habe gestern schon angefangen die Masterdatei zu entschlacken das nichts anderes drin ist. Die Datei steuert bei mir unzählige Sachen, da geht es nicht um geheime Sache sondern nur das die Codes die für diese Funktion sind, drin sind und nicht mehr sonst verwirrt es.
Anzeige
AW: Blattnamen holen
28.05.2022 21:42:11
Marcus
Hallo zusammen,
habe jetzt eine 2te Datei erstellt und hochgeladen.
Vielleicht ist es so verständlicher als nur durch Text.
https://www.herber.de/bbs/user/153302.zip
@Herbert_Grom danke für den Tipp
Gruß
Marcus
AW: Blattnamen holen
29.05.2022 10:18:56
Herbert_Grom
Hallo Marcus,
in dieser Formel

=SVERWEIS(AF1;Basic!A4:I25;2;FALSCH) 
hast du das Arbeitsblatt "Basic" angegeben. Das gibt es aber gar nicht! Überprüfe noch mal deine Wünsche.
Servus
AW: Blattnamen holen
29.05.2022 13:15:40
Marcus
@Herbert_Grom
ja das weis ich das sind 2 Formel aus einer anderen Datei, als Muster/ Beispiel.
diese 2 Beispiele beziehen sich auf Werte senden / holen wenn sich die Blätter in der gleichen Arbeitsmappe befinden.
Mein Problem ist das ich jetzt 2 Arbeitsmappen haben wo sich das gleiche abspielen soll. Das wäre mein Wunsch.
Ablauf ist:
Über die Datei Datenbank, wird ein neuer Ordner mit Unterordner erstellt und dort eine leere Vorlage abgelegt.
das funktioniert
Ablauf soll (Wunsch):
so wie oben plus, das in der leeren Vorlage Informationen aus der Datei Datenbank übertragen werden, ID usw.
Ich habe nur keinen Schimmer wie ich den Blattnamen an die leere Vorlage übergeben soll um dann im Nachgang mit dem Blattnamen in der Datei Datenbank die anderen Infos abzurufen.
Ich hoffe ich konnte es erklären?
Ist schwierig
Danke für die Hilfe
Marcus
Anzeige
AW: Blattnamen holen
29.05.2022 13:40:08
Herbert_Grom
Hallo Marcus,
ich habe das jetzt mal so gemacht, dass, wenn du in Spalte B (hier in B 10) einen Text, etc., eingibst (hier mal nur ein "f"), dann wir in deinem Ordner ein neuer Ordner (hier 9), sowie ein Unterordner "Inspektion" und darin die neue Vorlagendatei "9 f.xlsx" erstellt. Ist das so, wie du es gedacht hast?
Userbild
Servus
AW: Blattnamen holen
29.05.2022 14:44:41
Marcus
@Herbert_Grom
ja genau und wie geht das?
Gruß
Marcus
AW: Blattnamen holen
29.05.2022 16:52:03
Herbert_Grom
Du schreibst: jetzt wäre mein Wunsch, dass Werte aus Spalte A + B + C an die leere Vorlage im Unterordner übergeben werden.
Meinst du dabei die "leere Vorlage" "Inspektion" und wenn ja, dort das Sheet "Inspektionsvorgaben"? Und wenn auch hier wieder ja, in welche Zellen sollen die Werte aus dem Sheet "Regelmaschinen", der Spalten A, B und C?
Servus
Anzeige
AW: Blattnamen holen
29.05.2022 17:31:58
Herbert_Grom
Also deine Angaben sind schon recht verwirrend! Einmal schreibst du, dass nur die Angaben der Spalten A + B benötigt werden, und dann schreibst du wieder, dass A + B + C gebraucht werden!
Dann schreibst du: Name des Produkts aus Spalte B. In Spalte B steht aber nicht der "Name des Produkts" sondern die "Waffen Nr."!
Auch schreibst du: für Blätter die sich in einer Maske befinden habe ich einen Code der das kann, aber nicht wenn es sich um verschiedene Arbeitsmappen/Sheets handelt Was meinst du mit "Maske" und wo ist "dieser Code"?
AW: Blattnamen holen
29.05.2022 19:34:05
Marcus
@Herbert_Grom
ja da gebe ich dir auch wieder recht, das mit den unterschiedlichen Bezeichnungen kommt daher das ich die Datei zum herzeigen umgebaut habe. Entschuldigung.
es wäre super wenn die Daten aus der Datei Datenbank - Reiter Regelmaschinen und hier die Spalten A B C an die Datei Vorlage Inspektion Reiter Inspektionvorgaben übergeben werden könnten. Wohin egal, ich kann es mir ja dann verschieben.
Dankeschön für die Zeit und Interesse und Hilfe
Gruß
Marcus
Anzeige
AW: Blattnamen holen
30.05.2022 10:12:59
Herbert_Grom
Hallo Marcus,
anbei mein Vorschlag. Das Makro startet, wenn du in Spalte B etwas eingibst. Vorher solltest du aber im Makro die Pfade und evtl. den Dateinamen anpassen.
https://www.herber.de/bbs/user/153315.xlsm
Servus
AW: Blattnamen holen
30.05.2022 10:32:03
Marcus
@ Herbert_Grom
perfekt danke, hast mir super weitergeholfen - hier kann ich jetzt weitermachen.
Dankeschön
Marcus
AW: Bitte sehr & danke für die Rückmeldung! owt
30.05.2022 12:29:33
Herbert_Grom
,,,

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige