Thema Datum  Von Nutzer Rating
Antwort
28.02.2022 08:56:13 Physio80
NotSolved
Blau Word VBA speichern unter ohne überschreiben
07.03.2022 09:45:36 Gast98806
Solved

Ansicht des Beitrags:
Von:
Gast98806
Datum:
07.03.2022 09:45:36
Views:
767
Rating: Antwort:
 Nein
Thema:
Word VBA speichern unter ohne überschreiben

So, habe die Lösung nun selbst gefunden.

Der Fehler lag in Zeile 8.

Für alle die ähnliche Probleme haben, hier der funktionierende Code:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
Option Explicit
  
Sub Speichern_unter()
Dim strFileName As String
  
strFileName = NextFileIndexName("S:\Physikalische Therapie\Protokolle", "Protokoll Teambesprechung_" & Format(Date, "yyyy_mm_dd") & " (($)).docx", "0", 1)
 
If Len(strFileName) Then ActiveDocument.SaveAs2 strFileName, wdFormatXMLDocument
End Sub
  
Private Function NextFileIndexName(ByVal FilePath As String, ByVal FileNamePattern As String, Optional ByVal IndexFormat As _
  String = "-0", Optional ByVal StartIndex As Long = 0, Optional ByVal ShowNullIndex As Boolean = True) As String
  'PARAMETERINFO:
  'FilePath         = Directory where the file is or should be located.
  'FileNamePattern  = Filename where '($)' marks the position of index-number!
  'IndexFormat      = The desired Format of the indexnumber.
  'StartIndex       = Lower bound of the indexnumber.
  'ShowNullIndex    = If true, the index '0' will be shown in the filename.
    
  Dim varFile As Variant, strCheck As String, strIndex As String, strTemp As String, lngIndex As Long
    
  Const PLACEHOLDER As String = "($)"
    
  On Error GoTo ErrorHandler
  
  If InStr(1, FileNamePattern, PLACEHOLDER) = 0 Then GoTo ErrorHandler
  If Len(FileNamePattern) <> Len(Replace(FileNamePattern, PLACEHOLDER, "")) + Len(PLACEHOLDER) Then GoTo ErrorHandler
  If Dir(FilePath, vbDirectory) = "" Then GoTo ErrorHandler
  If Right(FilePath, 1) <> "\" Then FilePath = FilePath & "\"
    
  varFile = Split(FileNamePattern, PLACEHOLDER)
  
  lngIndex = StartIndex
  
  Do
    If lngIndex = 0 And ShowNullIndex Then
      strIndex = Format(lngIndex, IndexFormat)
    ElseIf lngIndex > 0 Then
      strIndex = Format(lngIndex, IndexFormat)
    End If
    lngIndex = lngIndex + 1
    strTemp = FilePath & varFile(0) & strIndex & varFile(1)
    strCheck = Dir(strTemp, vbNormal)
  Loop Until strCheck = ""
  
  NextFileIndexName = strTemp
  Exit Function
ErrorHandler:
  NextFileIndexName = ""
End Function

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
28.02.2022 08:56:13 Physio80
NotSolved
Blau Word VBA speichern unter ohne überschreiben
07.03.2022 09:45:36 Gast98806
Solved