Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1400to1404
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

pdf Dateien anhand Liste verschieben

pdf Dateien anhand Liste verschieben
18.01.2015 18:20:12
Thorsten Grothe

Hallo,
dies ist mein erster Post hier, bitte seit also nachsichtig mit mir :-) Ich habe folgendes kleines Problemchen.
Im Ordner Unsortiert liegen viele PDF-Dateien, die nach folgendem Muster benannt sind:
Name_fortlaufendeNummer.pdf und
Name_fortlaufendeNummerwieoben_Dossier.pdf
Außerdem habe ich eine Excel-Liste in der folgendes steht
A1 = Name der Person
A2 = Vorname der Person
A3 = Klasse, zum Beispiel HH14E
A4 = ok, fehlt noch
Nun möchte ich, dass die Dateien in dem Verzeichnis mit der Liste verglichen werden und in das Verzeichnis A3 verschoben werden. Wenn das Verzeichnis A3 nicht existiert, soll es erstellt werden, also so:
Müller_01245788.pdf ist in der Klasse HH14E
also verschiebe Müller_01245788.pdf und Müller_01245788_Dossier.pdf in den Ordner HH14E.
Leider kommen die Dateien manchmal auch mit dem Vornamen an, also so:
Müller_Hans_124777.pdf und Müller_Hans_124777_Dossier.pdf
Das Script müsste also damit klarkommen, dass Dateien mit Vor- und/oder Nachnamen existieren und diese korrekt verschieben.
Wenn die Dateien erfolgreich verschoben werden konnten, soll in Spalte A4 ein ok erscheinen, wenn nicht der String fehlt noch.
Das ganze sollte natürlich in einer Schleife laufen die dann endet, wenn alle Dateien verschoben wurden.
Für Hilfe wäre ich sehr dankbar. Excel kann ich zwar ganz gut, VBA leider überhaupt nicht. Ich hatte auch erst an ein Shell-Script gedacht, finde die Excel-Lösung, wenn denn machbar, besser, weil man dann gleich eine Übersicht darüber hat, welche Dateien noch fehlen. Ist es möglich, so etwas mit Excel zu machen?
Herzliche Grüße und vielen Dank!
Th. Grothe

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: pdf Dateien anhand Liste verschieben
18.01.2015 19:02:23
Ralf P.
Hallo Thorsten,
Das ist kein Problem.
Noch ein paar Randbedingungen abfragen:
1. Gibt es keine Schüler, die den gleichen Nachnamen haben? Denn ist der Vorname ein MUSS.
2. Ich würde den Vornamen immer mit in den Dateinamen einbauen, selbst wenn es i.m. keine doppelungen gibt?!
3. Die Ordner sind werden erstellt im Ordner unsortiert?
Wenn niemand mir zuvorkommt, fange ich in Ca. 1h an, dir das zu coden.
Andere geben bitte bescheid. Doppelte Arbeit muss nicht sein.
Gruß
Ralf

AW: pdf Dateien anhand Liste verschieben
18.01.2015 19:56:25
Thorsten Grothe
Hallo Ralf,
zunächst einmal herzlichen Dank für die Antwort, das geht ja schnell hier, klasse!!!
zu 1. ja, da hast du Recht, natürlich gibt es Schüler, die den gleichen Nachnamen haben, daran habe ich nicht gedacht, der Vorname ist also unbedingt notwendig, leider kommen die Dateien aber nicht immer so an, ein Beispiel:
Müller_0123.pdf
ist anders als
Müller_01234.pdf, weil die lfd. Nummer anders ist.
Der Vorname steht dann leider nur in der Datei selbst, das ist saudoof gelöst aber ich kann es nicht ändern, habe schon mit den Verantwortlichen gesprochen....angeblich systembedingt. Warum sie es mal mit und mal ohne Vornamen machen, ist mir ein Rätsel.
zu 2. hat sich damit erledigt.
zu 3. Ich habe bislang folgende Struktur, die vom jeweiligen Rechner und Laufwerk unabhängig sein sollte. Beim Entpacken mit Unpacker.bat habe ich das mit %~dp0\Unsortiert\PDF\ gelöst.
Userbild
Man sieht im Ordner Unsortiert die gepackten Auswertungen, die per Batch (Unpacker.bat) entpackt und in den Ordner Unsortiert\PDF verschoben werden. Nun sollen Sie per Liste verglichen werden und anschließend in den Ordner Sortiert\Klasse verschoben werden. Die jeweiligen Ordner der Klassen müssen natürlich gemäß Liste erstellt werden. Ich hoffe, dass ich es deutlich genug erklären konnte.
Und eines habe ich noch vergessen, es sind pro Schüler jeweils drei Dateien
Name_lfdeNummer.pdf
Name_lfdeNummerwieoben_Dossier.pdf
Name_lfdeNummerwieoben_Zertifikat.pdf

das habe ich im Eingangspost falsch beschrieben, sorry mein Fehler.
Herzlichen Dank schon einmal für die Mühe!
Viele Grüße
Thorsten

Anzeige
AW: pdf Dateien anhand Liste verschieben
18.01.2015 20:11:12
Ralf P.
Hallo Thorsten,
ich habe schon mal angefangen.
Soweit so gut, bin fast fertig.
Wie wir das mit dem Müller_123, Müller_1234 machen wollen, weiß ich noch nicht.
Kann es sein, dass alle Datei des gleichen Schülers, den gleichen String haben.
Also Müller_Mario hat immer Müller_123, und Müller_Marcus hat immer Müller_1234?
Denn ist das kein Problem, denke ich.
Sei so nett und schaue alle paar Minuten hier rein, damit meine Fragen nicht so lange zur Beantwortung brauchen ;).
Ralf

AW: pdf Dateien anhand Liste verschieben
18.01.2015 20:59:14
Ralf P.
Hallo Thorsten,
kopiere den Code bitte in ein Modul (ALT+F11).
Kopiere dir deine Verzeichnisse zum testen, falls was schief geht.
Passe die Pfade im Makro an.
Lege dir alle Fenster nebeneinander, und gehe den Code mit F8 Zeilenweise durch, damit du siehst, wo was passiert. 2 Explorer Fenster mit Quelle und Ziel sind sicher hilfreich.
Sicherlich wird man noch nachsteuern müssen.
Gruß
Ralf
Option Explicit
Sub PDFsKopieren()
Dim Wb As Workbook
Dim Sht As Worksheet
Dim Zelle As Range
Const PfadUnsort As String = "C:\unsortiert\"
Const PfadSort As String = "C:\sortiert\"
Dim Datei As String
Dim i As Byte
Set Wb = ActiveWorkbook
Set Sht = Wb.ActiveSheet
ChDir PfadUnsort
With Sht
For Each Zelle In .Range(.Cells(2, 1), .Cells(.UsedRange.Rows.Count, 1))
If Zelle <> "" Then
i = 0
Zelle.Select
If Dir(PfadSort & Zelle.Offset(, 2), vbDirectory) = "" Then
MkDir PfadSort & Zelle.Offset(, 2)
End If
Datei = Dir(PfadUnsort & Zelle & "*" & Zelle.Offset(, 1) & "*pdf", vbNormal)
If Datei = "" Then
Datei = Dir(PfadUnsort & Zelle & "*pdf", vbNormal)
End If
Do While Datei <> ""
Err.Clear
'                On Error Resume Next
FileCopy PfadUnsort & Datei, PfadSort & Zelle.Offset(, 2) & "\" & Datei
If Err.Number <> 0 Then
MsgBox Datei & " konnte nicht kopiert werden! Bitte Prüfen! Abbruch!"
Exit Sub
End If
On Error GoTo 0
Kill Datei
i = i + 1
Datei = Dir
Loop
Zelle.Offset(, 3) = i & " Dateien verschoben"
End If
Next
End With
End Sub

Anzeige
AW: pdf Dateien anhand Liste verschieben
19.01.2015 17:33:33
Thorsten Grothe
Hallo Ralf,
ich habe dein Script gerade getestet, die Pfade angepasst und es durchlaufen lassen.
Folgendes passiert:
Eine Datei wird in den Ordner Sortiert kopiert aber ohne, dass vorher ein Unterordner mit der entsprechenden Klasse angelegt wird.
Danach bricht das Script mit einem Laufzeitfehler 53: Datei nicht gefunden ab und zwar genau an der mit ##### markierten Stelle:

Sub PDFsKopieren()
Dim Wb As Workbook
Dim Sht As Worksheet
Dim Zelle As Range
Const PfadUnsort As String = "E:\Geva_Test\Unsortiert\PDF\"
Const PfadSort As String = "E:\Geva_Test\Sortiert\"
Dim Datei As String
Dim i As Byte
Set Wb = ActiveWorkbook
Set Sht = Wb.ActiveSheet
ChDir PfadUnsort
With Sht
For Each Zelle In .Range(.Cells(2, 1), .Cells(.UsedRange.Rows.Count, 1))
If Zelle <> "" Then
i = 0
Zelle.Select
If Dir(PfadSort & Zelle.Offset(, 2), vbDirectory) = "" Then
MkDir PfadSort & Zelle.Offset(, 2)
End If
Datei = Dir(PfadUnsort & Zelle & "*" & Zelle.Offset(, 1) & "*pdf", vbNormal)
If Datei = "" Then
Datei = Dir(PfadUnsort & Zelle & "*pdf", vbNormal)
End If
Do While Datei <> ""
Err.Clear
'                On Error Resume Next
FileCopy PfadUnsort & Datei, PfadSort & Zelle.Offset(, 2) & "\" & Datei
If Err.Number <> 0 Then
MsgBox Datei & " konnte nicht kopiert werden! Bitte Prüfen! Abbruch!"
Exit Sub
End If
On Error GoTo 0
###### Bis hier, dann Abbruch ############
Kill Datei
i = i + 1
Datei = Dir
Loop
Zelle.Offset(, 3) = i & " Dateien verschoben"
End If
Next
End With
End Sub
und noch eine Frage, ich kenne die Syntax nicht, frage mich nur, ob das Hochkomma hier hin gehört?
'                On Error Resume Next
Ich hoffe, du kannst etwas damit anfangen?
Herzliche Grüße
Thorsten

Anzeige
AW: pdf Dateien anhand Liste verschieben
19.01.2015 21:41:43
Ralf P.
Hallo Thorsten,
da fehlte noch der pfad beim kill.
das "on error resume next" verhindert das unterbrechen der abarbeitung. dann sollte jedoch zwingend eine fehlerbehandlung stattfinden, was bei if err.number <> 0 geschieht.
denn lasse ich abbrechen, wenn die datei nicht kopiert werden konnte und somit auch nicht gelöscht werden soll. der sicherheit wegen.
ich habe deine verzeichnisstruktur nachgebaut, es funktioniert jetzt alles.
was noch fehlt: das umbenennen der dateien nach dem muster name_vorname_???.pdf.
ist der zahlenstring bzw. die texte hinter den namen von bedeutung und müssen die erhalten bleiben?
wenn ja, dann liste mir bitte _alle_ möglichen varianten von dateinamen auf.
Gruß
Ralf
Sub PDFsKopieren()
Dim Wb As Workbook
Dim Sht As Worksheet
Dim Zelle As Range
Const PfadUnsort As String = "E:\Geva_Test\Unsortiert\PDF\"
Const PfadSort As String = "E:\Geva_Test\Sortiert\"
Dim Datei As String
Dim i As Byte
Set Wb = ActiveWorkbook
Set Sht = Wb.ActiveSheet
ChDir PfadUnsort
With Sht
For Each Zelle In .Range(.Cells(2, 1), .Cells(.UsedRange.Rows.Count, 1))
If Zelle <> "" Then
i = 0
Zelle.Select
If Dir(PfadSort & Zelle.Offset(, 2), vbDirectory) = "" Then
MkDir PfadSort & Zelle.Offset(, 2)
End If
Datei = Dir(PfadUnsort & Zelle & "*" & Zelle.Offset(, 1) & "*pdf", vbNormal)
If Datei = "" Then
Datei = Dir(PfadUnsort & Zelle & "*pdf", vbNormal)
End If
Do While Datei <> ""
Err.Clear
On Error Resume Next 'abschalten der fehlermeldungen und einfach weitermachen
FileCopy PfadUnsort & Datei, PfadSort & Zelle.Offset(, 2) & "\" & Datei
If Err.Number <> 0 Then
MsgBox Datei & " konnte nicht kopiert werden! Bitte Prüfen! Abbruch!"
Exit Sub
End If
On Error GoTo 0
Kill PfadUnsort & Datei
i = i + 1
Datei = Dir
Loop
Zelle.Offset(, 3) = i & " Dateien verschoben"
End If
Next
End With
End Sub

Anzeige
AW: pdf Dateien anhand Liste verschieben
19.01.2015 22:26:26
Thorsten Grothe
Hallo Ralf,
großartig, es funktioniert !!! Danke!
Ein paar Kleinigkeiten noch :-),
1. Nein, der Zahlenstring stört eigentlich nur, der kann also beim Umbenennen gelöscht werden,
2. Was mir aufgefallen ist, wenn keine Leerzeile vor dem ersten Eintrag in der Tabelle ist, wird die erste Datei in der Excel-Liste (A1) ignoriert, wenn eine (mehrere habe ich nocht nicht probiert) Leerzeile vor dem ersten Eintrag in der Excel-Liste ist, wird die letze Datei in der Excel-Liste ignoriert (hier A10), das verstehe ich nicht...
3. Der Rest wird korrekt in die Ordner der einzelnen Klassen kopiert,
4. Bislang werden die Dateien von Unsortiert nach Sortiert kopiert und nicht verschoben, kann oder besser darf man sie auch verschieben also im DOS-Sinne move and not copy?
5. In die Spalte D schreibt Excel nach dem Kopieren X Dateien verschoben, es würde mir schon vollkommen reichen, wenn dort einfach OK für verschobene Dateien und fehlt noch für noch nicht vershobene Dateien stünde, geht das?
Herzliche Grüße und nochmals Danke!
Thorsten

Anzeige
AW: pdf Dateien anhand Liste verschieben
19.01.2015 22:29:27
Thorsten Grothe
Mist, hab ich noch vergessen: Darf die Tabelle auch Überschriften in der ersten Zeilen haben (hat sie bislang noch nicht)?
VG und gute Nacht!
Thorsten

AW: pdf Dateien anhand Liste verschieben
20.01.2015 06:45:40
Ralf P.
Unbedingt :)
Davon bin ich ausgegangen, weswegen die erste Zeile ignoriert wird. Der Rest später..
Ralf

AW: pdf Dateien anhand Liste verschieben
20.01.2015 15:33:03
Ralf P.
Hallo Thorsten,
1. Datei wird immer Nachname_Vorname_[Dossier|Zertifikat].pdf umbenannt
2. & 3. siehe dein letzter Post, Kopfzeile fehlt
4. Move geht mit den VBA Dateioperationen nicht, gib mal in der vba-hilfe ein: datei-schlüsselwörter
es gibt aber noch das andere: Scripting.FileSystemObject, damit kenne ich mich nicht aus
5. erledigt
Gruß
Ralf
Sub PDFsKopieren()
Dim Wb As Workbook
Dim Sht As Worksheet
Dim Zelle As Range
Const PfadUnsort As String = "E:\Geva_Test\Unsortiert\PDF\"
Const PfadSort As String = "E:\Geva_Test\Sortiert\"
Dim Datei As String, NeueDatei As String
Dim i As Byte
Dim NName, Vorname, Klasse
Set Wb = ActiveWorkbook
Set Sht = Wb.ActiveSheet
ChDrive Left(PfadSort, 1)
With Sht
For Each Zelle In .Range(.Cells(2, 1), .Cells(.UsedRange.Rows.Count, 1))
If Zelle <> "" Then
i = 0
Zelle.Select
NName = Zelle
Vorname = Zelle.Offset(, 1)
Klasse = Zelle.Offset(, 2)
If Dir(PfadSort & Klasse, vbDirectory) = "" Then
MkDir PfadSort & Klasse
End If
ChDir PfadSort & Klasse
'erst nach nachname+vorname suchen
Datei = Dir(PfadUnsort & NName & "*" & Vorname & "*pdf", vbNormal)
If Datei = "" Then
'sonst nur nach nachname suchen
Datei = Dir(PfadUnsort & NName & "*pdf", vbNormal)
End If
Do While Datei <> ""
Err.Clear
On Error Resume Next 'abschalten der fehlermeldungen und einfach weitermachen
FileCopy PfadUnsort & Datei, Datei
If Err.Number <> 0 Then
'wenn datei nicht kopiert werden konnte
MsgBox Datei & " konnte nicht kopiert werden! Bitte Prüfen! Abbruch!"
Exit Sub
End If
On Error GoTo 0
'datei löschen
Kill PfadUnsort & Datei
'neuen dateinamen bestimmen
NeueDatei = NName & "_" & Vorname
If InStr(1, Datei, "Dossier", vbTextCompare) > 0 Then
NeueDatei = NeueDatei & "_Dossier.pdf"
ElseIf InStr(1, Datei, "Zertifikat", vbTextCompare) > 0 Then
NeueDatei = NeueDatei & "_Zertifikat.pdf"
Else
NeueDatei = NeueDatei & ".pdf"
End If
'date umbenennen
Name Datei As NeueDatei
i = i + 1
Datei = Dir
Loop
If i > 0 Then
Zelle.Offset(, 3) = "OK"
Else
Zelle.Offset(, 3) = "fehlt noch"
End If
End If
Next
End With
End Sub

Anzeige
AW: pdf Dateien anhand Liste verschieben
20.01.2015 17:47:36
Thorsten Grothe
Hallo Ralf,
1. super!
2. hat sich erledigt
3. hab ich nicht dran gedacht, das Makro löscht die verschobenen Dateien aus \Unsortiert\PDF< _ /b> ja trotzdem mit

Kill PfadUnsort & Datei
also alles gut!!!!
4. ich hoffe, dir nicht zu sehr auf die Nerven zu gehen, so viel Hilfe aus Foren bin ich wahrlich nicht gewohnt, eine Kleinigkeit hätte ich trotzdem noch: in die Spalte D wird ja nun ok bzw. fehlt noch eingetragen, was ja auch so sein soll. Da die Dateien aber immer tröpfelweise kommen, wäre es schön, wenn der jeweils letzte Status bei einem erneutem Durchlauf des Makros erhalten bliebe. Das ist jetzt nicht der Fall, weil ja die Dateien, die verschoben wurden, nicht mehr da sind, also erscheint natürlich auch für schon erfolgreich verschobene Dateien ein fehlt noch.
5. Beim Testen ist mir aufgefallen, dass doppelte Namen zu einer Fehlermeldung "Datei existiert schon" führen, du hast da ja schon am Anfang erwähnt. Am einfachsten wäre es eigentlich, wenn alle Dateisätze mit gleichen Namen in das Verzeichnis \Sortiert\Doppler\ einsortiert würden (die ID kann dabei ruhig erhalten bleiben).
Also:
Berg_012.pdf, Berg_012_Zertifikat.pdf, Berg_012_Dossier.pdf
und
Berg_0123.pdf, Berg_0123_Zertifikat.pdf, Berg_0123_Dossier.pdf
einfach ins Verzeichnis \Sortiert\Doppler\ schieben, die müssten dann eben geöffnet werden und per Hand einsortiert werden, so oft kommt das nicht vor.
Wenn das ginge, hättest du mir wirklich sehr geholfen, wenn es zu aufwendig ist, sag Bescheid, ich verstehe das natürlich, schließlich ist es deine Zeit!!
6. In eigener Sache: gibt es gute Literatur zum Erlernen von Visual Basic, ich komme eher aus der Linux/Latex-Ecke und kenne mich mit VB leider überhaupt nicht aus, möchte das aber unbedingt ändern :-)
Viele Grüße
Thorsten

Anzeige
AW: pdf Dateien anhand Liste verschieben
20.01.2015 21:51:10
Ralf P.
Hallo Thorsten,
sobald ich Zeit habe, helfe ich gern. Mir macht es Spaß und ich lerne jedes Mal dazu.
zu 6. Es gibt sicher zahlreiche Literatur, auch im Internet. Ich habe mir VBA selbst beigebracht. Die ersten Schritte waren durch Lesen uns Verstehen von Beispielen schnell gemacht. Es gibt bestimmt Tutorials im Netz, die den schnellen Einstieg erleichtern. Versuche gleich objektorientiert zu programmieren, das vereinfacht einiges.
zu 4. Schüler wiederholen sich nicht in der Liste? Oder es wird keine neuen PDFs für den gleichen, bereits geprüften Schüler geben? Wenn ja, müsstest du die erneut eintragen.
Ich mache das jetzt so, dass das Makro Zeilen ignoriert, wenn in Spalte 4 bereits was steht.
If Zelle <> "" And Zelle.Offset(, 3) = "" Then
5. Wenn die nach /sortiert/doppler verschoben werden, kennst du die Klasse nicht mehr. Nicht lieber /sortiert/klasse/doppler?
Gruß
Ralf
Sub PDFsKopieren()
Dim Wb As Workbook
Dim Sht As Worksheet
Dim Zelle As Range
Const PfadUnsort As String = "E:\Geva_Test\Unsortiert\PDF\"
Const PfadSort As String = "E:\Geva_Test\Sortiert\"
Dim Datei As String, NeueDatei As String
Dim i As Byte
Dim NName, Vorname, Klasse
Set Wb = ActiveWorkbook
Set Sht = Wb.ActiveSheet
ChDrive Left(PfadSort, 1)
With Sht
For Each Zelle In .Range(.Cells(2, 1), .Cells(.UsedRange.Rows.Count, 1))
If Zelle <> "" And Zelle.Offset(, 3) = "" Then
i = 0
Zelle.Select
NName = Zelle
Vorname = Zelle.Offset(, 1)
Klasse = Zelle.Offset(, 2)
If Dir(PfadSort & Klasse, vbDirectory) = "" Then
MkDir PfadSort & Klasse
End If
ChDir PfadSort & Klasse
Datei = Dir(PfadUnsort & NName & "*" & Vorname & "*pdf", vbNormal)
If Datei = "" Then
Datei = Dir(PfadUnsort & NName & "*pdf", vbNormal)
End If
Do While Datei <> ""
Err.Clear
NeueDatei = NName & "_" & Vorname
If InStr(1, Datei, "Dossier", vbTextCompare) > 0 Then
NeueDatei = NeueDatei & "_Dossier.pdf"
ElseIf InStr(1, Datei, "Zertifikat", vbTextCompare) > 0 Then
NeueDatei = NeueDatei & "_Zertifikat.pdf"
Else
NeueDatei = NeueDatei & ".pdf"
End If
FileCopy PfadUnsort & Datei, Datei
On Error Resume Next 'abschalten der fehlermeldungen und einfach weitermachen
Name Datei As NeueDatei
If Err.Number = 58 Then
Err.Clear
MkDir "doppler"
FileCopy Datei, CurDir & "\doppler\" & Datei
Kill Datei
End If
On Error GoTo 0
Kill PfadUnsort & Datei
i = i + 1
Datei = Dir
Loop
If i > 0 Then
Zelle.Offset(, 3) = "OK"
Else
Zelle.Offset(, 3) = "fehlt noch"
End If
End If
j = j + i
Next
End With
MsgBox j & " Dateien wurden verschoben", vbInformation
End Sub

Anzeige
AW: pdf Dateien anhand Liste verschieben
21.01.2015 17:57:12
Thorsten Grothe
Hallo Ralf,
schön, dass du auch noch Spaß daran hast :-) Ich habe dein Makro gerade mal ausführlich getestet, es funktioniert wirklich gut, genauso wollte ich das!
zu 4. Nein, es gibt keine neuen PDF's für einen bereits geprüften Schüler, dann müsste er den Test ja nochmal durchführen und das sollte eigentlich nicht passieren.
Zum Doppler Verezeichnis: stimmt natürlich, das muss ich in der Praxis testen, wenn wir ca. 500 PDF's bekommen, ob ein zentrales Doppler Verzeichnis nicht einfacher ist, aber dein Einwand macht absolut Sinn!
So, bleibt nur noch eines: Ich habe einen Testlauf gemacht vorher extra einen Satz Dateien aus dem Verzeichnis Unsortiert gelöscht. Wie zu erwarten, erscheint in der Liste jetzt ein fehlt noch. Wenn man aber, wie es eben in der Praxis auch sein wird, den Satz Dateien wieder in das Verzeichnis Unsortiert einfügt, findet das Makro sie nicht und es wird keine Datei verschoben, der Debugger zeigt keine Fehler an ..... ich bin es Zeile für Zeile durgegangen, hmm. Ich habe Excel neu gestartet aber es hilft nichts, die Datei wird nicht gefunden und auch nicht verschoben....
Weiß du warum?
Herzliche Grüße
Thorsten

Anzeige
AW: pdf Dateien anhand Liste verschieben
21.01.2015 19:20:27
Ralf P.
Hallo Thorsten,
Das liegt daran, dass in der Zelle mit dem Namen in Spalte 4 etwas steht und deshalb die Zeile ignoriert wird.
So wie du es wolltest ;).
Ralf

AW: pdf Dateien anhand Liste verschieben
21.01.2015 20:07:57
Thorsten Grothe
Hallo Ralf,
stimmt, ich habs gerade ausprobiert, ich kopiere jetzt einfach beim ersten Lauf die Spalte nach E und ergänze, diejenigen, die dazu gekommen sind. Aus dem fehlt noch habe ich einen Leerstring gemacht, so wird es etwas übersichtlicher, den Rest versuche ich innerhalb von Excel zu lösen IF/Then oder SVERWEIS vielleicht, mir schwebt eine Formel vor, die nachsieht ob in der linken Spalten ein OK steht und wenn ja, den String in die rechte Spalte kopiert. Mal sehen, so kann ich noch was lernen:-)
Auf jeden Fall ein dickes Dankeschön an dich für deine Mühe!
Viele Grüße
Thorsten

AW: pdf Dateien anhand Liste verschieben
21.01.2015 20:24:35
Ralf P.
Hallo Thorsten,
freut mich, dass es dir gefällt.
Probiere ruhig selbst aus.
Wenn du dir beim F8'en im VBA Fenster das Lokal-Fenster einblendest, kann du viel aus dem Inhalt lernen. Da kann man die ganzen Objekte und Variablen verfolgen und recherchieren, was alles so möglich ist.
Ich finde das sehr sinnvoll, wenn man die Syntax kennen lernen möchte.
Gruß
Ralf
P.S. Wenn du noch Fragen hast zu diesem oder einem anderen Problem, fange besser einen neuen Thread an, der wird langsam unübersichtlich und man muss so weit scrollen und suchen, ehe man den Beitrag findet.

AW: pdf Dateien anhand Liste verschieben
18.01.2015 21:58:04
Thorsten Grothe
Hallo Ralf,
vielen vielen Dank für die schnelle Hilfe!!!!
Leider kann ich das heute nicht mehr ausprobieren, ich muss morgen um 5 Uhr raus, aber ich setze mich morgen dran und werde berichten.
Und ja, jeder Schüler der zugehörigen drei Dateien hat immer den gleichen String!!!
Nochmals danke und gute Nacht!
P.S. ich bin ziemlich fit in Sachen Linux und Latex und kenne mich auch mit Emacs ganz gut aus, wenn du mal ein Problem in dieser Richtung haben solltest, helfe ich gerne !!!
Herzliche Grüße
Thorsten

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige