Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1728to1732
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
- Ordner kopieren und umbenennen
29.12.2019 21:25:37
Volker
Hallo,
ich versuche über VBA einen Ordern auf Sharepoint zu erstellen. Es soll erst geprüft werden ob der Ordner vorhanden ist und wenn nicht soll ein neuer Ordner aus einer Vorlage die im selben Verzeichnis liegt kopiert werden.
Auf meinen Rechner funktioniert lokal das Ordner erstellen im OneDrive Ordner. Jetzt möchte ich das der Ordner direkt im Sharepoint erstellt wird damit auch andere Kollegen das Makro nutzen können. Die Excel Liste liegt auch auf dem Sharepoint
Wenn der Code ausgeführt wird kommt die Fehlermeldung: Laufzeitfehler:76 Pfad nicht gefunden.
Mein Ordner "Vorlage" wird aber trotzdem kopiert (b.z.w. nur das erste Verzeichnis im Ordner und dann gibt es Probleme mit Umlauten, aus "Lagepläne" wird: "Lagepläne")
Allerdings auch nicht in das Verzeichnis: "\Kabelarbeiten" sondern in das Verzeichnis dadrüber "\Ort"
Dort hat der Ordner auch noch einen falschen Namen bekommen. Eigentlich sollte der Ordner aus der Spalte D & G benannt werden. Jetzt besteht es aus "KabelarbeitenD & G"
Zusammengefasst sollte es so aussehen: //dbsw.sharepoint.com\sites\TeamKabe\Freigegebene Dokumente\Ort\Kabelarbeiten\SpalteD&G
Im Moment ist es aber: //dbsw.sharepoint.com\sites\TeamKabe\Freigegebene Dokumente\Ort\KabelarbeitenSpalteD&G
Ich hoffe jemand ist so nett und hilft mir weiter....mir fällt langsam nichts mehr ein....
hier mein Code:
Sub NeuerOrdnerAnlegenFinalKurz()
'Ein neuer Ordern wird im Ordner "Kabelarbeiten" erstellt als Kopie des Ordners "Vorlage" Die  _
Benennung erfolgt aus den Spalten D & C
varKabelarbeiten = "//dbsw.sharepoint.com\sites\TeamKabe\Freigegebene Dokumente\Ort\ _
Kabelarbeiten"    'Variable, zum Pfad Ordner "Kabelarbeiten"
varVorlage = "//dbsw.sharepoint.com\sites\TeamKabe\Freigegebene Dokumente\Ort\Kabelarbeiten\ _
Vorlage"
With ActiveCell                                             'Die aktive Zelle
varSpalten = Cells(.Row, 4) & " " & Cells(.Row, 3)              'Variable, Auswahl der  _
Spalten E & D
End With
If Dir(varKabelarbeiten & varSpalten, 16) = "" Then
CreateObject("Scripting.FileSystemObject").CopyFolder varVorlage, varKabelarbeiten &  _
varSpalten         'kopiere Ordern und benenne um
MsgBox "Der Ordner:" & vbCrLf & vbCrLf & Cells(ActiveCell.Row, 4).Value & " " & Cells( _
ActiveCell.Row, 3).Value & vbCrLf & vbCrLf & "wurde angelegt.", vbOKOnly, "Kabelarbeiten"             'MessageBox wurde angelegt
Else
MsgBox "Der Ordner:" & vbCrLf & vbCrLf & Cells(ActiveCell.Row, 4).Value & " " & Cells( _
ActiveCell.Row, 3).Value & vbCrLf & vbCrLf & " ist bereits vorhanden!", vbCritical, "Kabelarbeiten"   'MessageBox bereits vorhanden
End If
End Sub
Gruß Volker

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: - Ordner kopieren und umbenennen
30.12.2019 11:34:11
mmat
Hallo,
ich hab mal versucht, das etwas übersichtlicher zu gestalten, damit sollte das Problem mit dem Unterverzeichnis unter "\Kabelarbeiten" erledigt sein (du hast lediglich einen \ vergessen).
Option Explicit
' Ein neuer Ordern wird im Ordner "Kabelarbeiten" erstellt als Kopie des Ordners "Vorlage"
' Die Benennung erfolgt aus den Spalten D & C
Sub NeuerOrdnerAnlegenFinalKurz()
Dim varMaster As String, varVorlage As String, varSpalten As String, varNeu As String
varMaster = "//dbsw.sharepoint.com\sites\TeamKabe\Freigegebene Dokumente\Ort\Kabelarbeiten\"
varVorlage = varMaster & "Vorlage"
varSpalten = Cells(ActiveCell.Row, 4).Value & " " & Cells(ActiveCell.Row, 3).Value
varNeu = varMaster & varSpalten
If Dir(varNeu, 16) = "" Then
CreateObject("Scripting.FileSystemObject").CopyFolder varVorlage, varNeu  'kopieren und  _
umbenennen
MsgBox "Der Ordner:" & vbLf & vbLf & varSpalten & vbLf & vbLf & "wurde angelegt.", vbOKOnly, _
"Kabelarbeiten"           'angelegt
Else
MsgBox "Der Ordner:" & vbCr & vbCr & varSpalten & vbCr & vbCr & " ist bereits vorhanden!",  _
vbCritical, "Kabelarbeiten" 'vorhanden
End If
End Sub
Allerdings vermute ich, dass die Fehlermeldung was mit den Umlauten zu tun hat, hier hilft wohl nur eine Vermeidungsstrategie ...
vg, MM
Anzeige
AW: - Ordner kopieren und umbenennen
31.12.2019 11:04:17
Volker
Hallo,
danke für die Antwort und das aufräumen vom Code.
Ich konnte das Problem soweit lösen indem ich einen anderen Pfad zum Ordner angegeben habe und den fehlenden Backslash noch hinzugefügt.
der alte Pfad war: "//dbsw.sharepoint.com\sites\ (Der Pfad ist aus Sharepoint Online)
und der neue: "\\dbsw.sharepoint.com@SSL\DavWWWRoot\sites\ (Der Pfad ist aus dem Explorer)
Jetzt kommt keine Fehlermeldung mehr und dass mit den Umlauten klappt auch problemlos.
Eine Frage habe ich immer noch.
Ich würde noch gerne das nachdem der Ordner erstellt wurde ein Hyperlink automatisch mit eingefügt wird. Und zwar von der Spalte "C" der aktiven Zeile auf den neu erstellten Ordner.
Ist das auch möglich?
Gruß Volker
Anzeige
ich finde...
31.12.2019 13:01:12
Oberschlumpf
Hi Volker,
...neue Frage = neuer Beitrag
So wie jetzt kann ja passieren, dass dir nach Lösen der neuen Frage noch etwas - hier - einfällt, und MM würde dann immer + immer wieder für dich "da sein".
So wie jetzt "verhunzt" du, meiner Meinung nach, leider etwas den Grundgedanken eines Forums:
Alle helfen Jedem.
Aber ok ok, MM kann natürlich für sich selbst entscheiden, was er tut...oder nicht.
Nix desto trotz kann ich ja auch kundtun, was ich denke :-)
(zumal ich auch schon das eine und andere Mal über mehrere Tage mit nur einem Fragenden "beschäftigt" war, weil immer wieder ne neue Frage hinterher kam, und weil ich nicht aufgepasst habe, irgdwann mal Stop zu sagen)
Ciao
Thorsten
Anzeige
AW: neuer Beitrag
31.12.2019 16:56:27
Oberschlumpf
danke HaJo
AW: ich finde...
02.01.2020 10:27:11
mmat
Hallo Thorsten,
im Grunde hast du recht, das schlimmste ist, der Fragesteller schadet sich selber. Von vielen Lesern, die ggf. auch die Antwort wissen, wird wahrscheinlich ein Thread mit mehreren Antworten nicht weiter beachtet, es sei denn es handelt sich um ein interessantes Thema.
Und nein, ich werde nicht unbegrenzt zur Verfügung stehen :-)
Im vorliegenden Fall denke ich, die Frage lässt sich durch ein wenig Forenrecherche leicht beantworten.
vg, MM
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige