artefakt15
Goto Top

VB File.Move funktioniert nicht Laufzeitfehler 424

Ich habe folgenden Code zum ausprobieren, dieser funktioniert aber nicht und ich komme nicht drauf was falsch gemacht wurde. i-was ist wahrscheinlich falsch geschrieben aber die recherche im internet bringt mich auch nicht weiter face-sad und verzweifle schon an dem code, da es ja sicher nichts großartiges zur lösung ist....
ich will mit diesem code mittels commandbutton eine datei verschrieben. ich hoff es kann mir jemand von euch weiterhelfen. danke

Private Sub CommandButton1_Click()

File.Move , ("Y:\Hunde\Opos 07.pdf"), ("Y:\Katze\Opos 07.pdf"), False

End Sub

Content-Key: 149046

Url: https://administrator.de/contentid/149046

Printed on: April 23, 2024 at 13:04 o'clock

Member: bastla
bastla Aug 16, 2010 at 07:54:05 (UTC)
Goto Top
Hallo -Artefakt-!
i-was ist wahrscheinlich falsch geschrieben
"i-was ist wahrscheinlich richtig geschrieben" würde es eher treffen (ein Gruß - welcher Art auch immer - oder die Angabe der VB-Version kann es aber sicher nicht sein) ...

Grüße
bastla
Member: Skiddoo
Skiddoo Aug 16, 2010 at 08:18:12 (UTC)
Goto Top
Liegt mit ziemlicher Wahrscheinlichkeit an den Klammern...

File.Move("Y:\Hunde\Opos 07.pdf", "Y:\Katze\Opos 07.pdf")

Ansonsten kann ich bastla nur zustimmen.
Member: bastla
bastla Aug 16, 2010 at 08:59:13 (UTC)
Goto Top
@Skiddoo
Die Klammern sowieso, aber:
Entweder ist das Objekt "File" eine Datei (wurde jedenfalls auch nicht an das "Sub" übergeben) - dann wäre damit die Quelldatei gegeben und nur noch das Ziel erforderlich, oder es ist ein "FileSystemObject" - dann wäre die Methode "MoveFile" ...

Grüße
bastla
Member: Biber
Biber Aug 16, 2010 at 09:05:35 (UTC)
Goto Top
[OT]
Zitat von @Skiddoo:
Liegt mit ziemlicher Wahrscheinlichkeit an den Klammern...
Früher haben wir sogar vermutet "oder am Klammerbeutel".

Ich sag mal so...
... montagmorgenfühlige Moderatoren mit einer niedrigeren Toleranzschwelle hätten so eine Beitragsemulation sofort weggebratzt.

Na ja... einen halben Montagmorgen und somit einen halben halben Montach haben wir ja schon geschafft...

P.S. @-Artefakt-
Codeformatierung fehlt übrigens auch.

Grüße
Biber

[Edit]
Wer hat eigentlich den Montag erfunden?
Ich weiss zwar nicht wer es war, aber ich denke, er/sie schmort auch schon da, wo jeder Tag ein Montag ist.
Genauere Details liefere ich später mal als Liveberichterstatter nach.
[/Edit]

[/OT]
Member: Skiddoo
Skiddoo Aug 16, 2010 at 09:31:12 (UTC)
Goto Top
Da ich heut ja auch noch nicht ganz da bin ;) (siehe meinen Beitrag zu VB.Net)
hab ich einfach die Zeile von ihm bei mir in VS2005 reingeworfen umgeschrieben, getestet und zurückkopiert...

Anders gesagt, die Kristallkugel ist in der Reparatur.

Wer hat eigentlich den Montag erfunden?
Member: Artefakt15
Artefakt15 Aug 18, 2010 at 06:51:37 (UTC)
Goto Top
danke für die Hilfe vorab, aber wie muss der Code dann richtig heißen?

@Biber: wie da fehlt die Codeformatierung? wie darf ich das verstehen?

für weitere hilfe danke, gruß
Member: Biber
Biber Aug 18, 2010 at 08:35:57 (UTC)
Goto Top
Moin -Artefakt-,

Zitat von @Artefakt15:
@Biber: wie da fehlt die Codeformatierung? wie darf ich das verstehen?

So hast du gepostet [Zitiert aus dem Eröffnungsbeitrag]:

Private Sub CommandButton1_Click()

File.Move , ("Y:\Hunde\Opos 07.pdf"), ("Y:\Katze\Opos 07.pdf"), False

End Sub

So sieht es mit Codeformatierung aus:
Private Sub CommandButton1_Click()

File.Move , ("Y:\Hunde\Opos 07.pdf"), ("Y:\Katze\Opos 07.pdf"), False  

End Sub

Das macht es einfacher auf "die Anweisung in Zeile 27" zu verweisen, wenn es mal um längere Schnipsel geht.
Deshalb bitte ich in den Skriptschroterbereichen immer (also auch bei kleineren Schnipseln) darum.

Die Codeformatierung ist beschrieben in unseren FAQ und auch in dem kleinen optionalen Popup-Fenster "Formatierungshilfe", das bei jedem Erstellen/Editieren eines Beitrags/Kommentars angeboten wird.

Grüße
Biber
Member: bastla
bastla Aug 18, 2010 at 08:50:29 (UTC)
Goto Top
Hallo -Artefakt-!
wie muss der Code dann richtig heißen?
Da Du noch immer keine VB-Version genannt hast, ein Beispiel für irgendeine ...
Von = "Y:\Hunde\Opos 07.pdf"  
Nach = "Y:\Katze\Opos 07.pdf"  
Set fso = CreateObject("Scripting.FileSystemObject")  
If Not fso.FileExists(Nach) Then
    fso.MoveFile Von, Nach
Else
    MsgBox "Datei """ & Nach & """ ist bereits vorhanden!"  
End If
Set fso = Nothing
Noch als Anmerkung: Der Zielordner muss natürlich bereits vorhanden sein, eine gleichnamige Datei darin darf es noch nicht geben, da nicht überschrieben wird - ggf wäre diese vorweg zu löschen.

Grüße
bastla
Member: Artefakt15
Artefakt15 Aug 19, 2010 at 08:45:46 (UTC)
Goto Top
danke, für die Hilfe face-smile jetzt macht der Code das was ich wollte ...

die Formatierungsregeln les ich mir durch! wusste ich nicht, das dies hier so pflicht ist im forum!


habe jetzt zum Abschluss noch zwei kleine Fragen face-smile

wo kann ich feststellen welche version von VB ich besitze?
was sagt die Bezeichnung ("Scripting.FileSystemObject") ?

danke
Member: Biber
Biber Aug 19, 2010 at 09:16:56 (UTC)
Goto Top
Moin -Artefakt-,

Zitat von @Artefakt15:
die Formatierungsregeln les ich mir durch! wusste ich nicht, das dies hier so pflicht ist im forum!
Haben wir vielleicht ein kleines Problem mit Autoritäten?

Nein, Codeformatierung ist nicht "so pflicht hier im forum!".
Und ich hatte es doch auch so formuliert:
Deshalb bitte ich in den Skriptschroterbereichen immer (also auch bei kleineren Schnipseln) darum.
Okay, vielleicht war meine Begründung für dich nicht plausibel und nicht einleuchtend.
Und okay, vielleicht hätte ich die Worte "...bitte ich " auch in fett schreiben sollen.

Ich könnte auch in meine Signatur schreiben
"Ich werde mich mit keinen Fragen zu Skriptproblemen befassen, wenn der Code nicht lesbar formatiert ist."
Aber diese Signatur würdest du dann ja auch nie lesen können...

Grüße
Biber
Member: bastla
bastla Aug 19, 2010 at 10:09:04 (UTC)
Goto Top
Hallo -Artefakt-!
wo kann ich feststellen welche version von VB ich besitze?
Ich versuche, diese Frage ernst zu nehmen: Abgesehen davon, dass solche Programme die Version gerne mal im Namen (der Verknüpfung = das, womit Du sie startest) haben, gibt es in (Deinem?) VB 6.0 den Menüpunkt "?" und darin "Info zu Microsoft usw", bei VB 2005/2008 in "Hilfe" den Punkt "Info über usw" (wird auch in VB 2010 nicht wesentlich anders aussehen), und ein VB.NET habe ich grad nicht zur Hand ...
was sagt die Bezeichnung ("Scripting.FileSystemObject") ?
Nix, was Du nicht selber auch hättest finden können (zB hier) ...

Grüße
bastla