Thema Datum  Von Nutzer Rating
Antwort
Rot Word speichert Änderungen nicht. VBA Code das Problem?
11.10.2021 08:08:00 Gast94833
NotSolved

Ansicht des Beitrags:
Von:
Gast94833
Datum:
11.10.2021 08:08:00
Views:
880
Rating: Antwort:
  Ja
Thema:
Word speichert Änderungen nicht. VBA Code das Problem?

Guten Tag zusammen,

ich habe ein Problem, welches ich nicht gelöst bekomme... Folgender Umstand:

Meine Aufgabe ist es ein Dokument zu erstellen, in dem ich per CheckBox An-/ Abwählen kann was ich benötige. Dann soll VBA dieses Word Dokument als PDF Datei speichern. Für die Liste habe ich 3 Buttons.

1. Liste generieren (Alle nicht markierten Objekte werden eingegraut)

2. Liste bearbeiten (Alle Objekte werden wieder schwarz... Quasi Anfangszustand - Brauche ich eigentlich nicht, aber damit kann ich nochmal kurz über die Liste gehen und gucken ob ich alles richtig angeklickt habe)

3. Liste speichern (Bei allen markierten Objekten wird die CheckBox ausgeblendet, Alle nicht markierten Objekte werden ausgeblendet, Alle markierten Objekte rücken zusammen, damit es kein "Lückentext" wird, das Fenster "Speichern Unter" öffnet sich)

Bsp.:

Ich habe eine Einkaufsliste in Word mit allen Dingen

Einkaufsliste 1.0

[CheckBox-Aktiviert] Mehl

[CheckBox] Zucker

[CheckBox] Salz

[CheckBox-Aktiviert] Seife

Davon "aktiviere" ich nur Mehl und Seife per CheckBox.

Dann klicke ich auf Liste speichern.

Mein PDF Dokument sieht wie folgt aus:

Einkaufsliste 1.0

Mehl

Seife

 

Wenn ich jetzt Änderungen vornehme bspw. Salz wird auch noch benötigt, dann gehe ich wieder in die Vorlage in Word und aktiviere zusätzlich noch Salz

Einkaufsliste 1.0

[CheckBox-Aktiviert] Mehl

[CheckBox] Zucker

[CheckBox-Aktiviert] Salz

[CheckBox-Aktiviert] Seife

Dann klicke ich wieder auf Liste speichern. Da ich den Namen per VBA Code vorgegeben habe, fragt mich der PC natürlich, ob ich die bereits vorhandene Datei (die in der das Salz fehlt) mit meiner jetzigen überschreiben will. Wenn ich auf "JA" klicke, dann speichert er zwar das Word Dokument als PDF Datei ab, aber die Änderungen sind nicht übernommen. In meiner Liste würde dann noch immer das Salz fehlen, welches ich erst im zweiten Versuch aktiviert habe.....

Kann mir jemand sagen woran das liegt? Bin echt am verzweifeln... Wenn jemand gerne helfen würde, aber meine Erklärung nicht kapiert, dann einfach reinschreiben... Für mich ist es klar, weil ich ja die ganze Zeit daran arbeite, kann ja aber sein, dass der ein oder andere meine Gedankengänge nicht nachvollziehen kann ^^

Hier die drei Codes der jeweiligen Button, hoffe, dass ich alles im richtigen Format eingefügt habe:

 

Private Sub CommandButton1_Click()
  Dim FF As FormField                                                   
   
    If ActiveDocument.ProtectionType = wdAllowOnlyFormFields Then
        ActiveDocument.Unprotect                                        
    End If
   
    For Each FF In ActiveDocument.FormFields                           
        If FF.Type = wdFieldFormCheckBox Then                           
            If FF.Result = False Then                                 
                FF.Select                                               
                With Selection                                          
                    .Expand Unit:=wdParagraph                           
                    .Range.Font.ColorIndex = wdGray25                   
                End With
                
            End If
        End If
    Next FF
End Sub

Private Sub CommandButton2_Click()
Dim FF As FormField, donk As Paragraph
Dim myInShape As InlineShape                                            
   
    If ActiveDocument.ProtectionType = wdAllowOnlyFormFields Then       
        ActiveDocument.Unprotect
    End If

ActiveWindow.View.ShowAll = False
   
    For Each FF In ActiveDocument.FormFields                          
        If FF.Type = wdFieldFormCheckBox Then                      
               Set donk = FF.Range.Paragraphs(1)                        
                With donk
                .Range.Font.ColorIndex = wdBlack                        
                .Range.Font.Hidden = False                              
                End With
        End If
        Next FF
       
    
    For Each myInShape In ActiveDocument.InlineShapes                  
              If myInShape.Type = wdInlineShapeOLEControlObject Then    
            myInShape.Range.Font.Hidden = False                        
        End If
    Next myInShape
    
End Sub

Private Sub CommandButton3_Click()
Dim FF As FormField                                                    
    Dim Absatz As Paragraph
    Dim myInShape As InlineShape
    Dim shpShape As Shape
    Dim sDatei
    sDatei = Format(Date, "ddMMyyyy")
       
    If ActiveDocument.ProtectionType = wdAllowOnlyFormFields Then       
        ActiveDocument.Unprotect
    End If
   
ActiveWindow.View.ShowAll = True
   
For Each FF In ActiveDocument.FormFields                             
If FF.Type = wdFieldFormCheckBox Then                                  
    If FF.Result = False Then                                          
        With FF.Range.Paragraphs(1)                                   
        .Range.Font.Hidden = True                                     
       FF.Range.Font.Hidden = True                                   
    Else                                                              
    FF.Range.Font.Hidden = True                                       
    End If
End If
Next FF                                                                
                

        

For Each myInShape In ActiveDocument.InlineShapes                       
              If myInShape.Type = wdInlineShapeOLEControlObject Then    
            myInShape.Range.Font.Hidden = True                         
        End If
    Next myInShape
        
                                                                       
    
    With Application.Dialogs(wdDialogFileSaveAs)
    .Format = 17                                                       
    .Name = sDatei & "_T-Punkt_Einfriedung_ORT"                        
    .Show                                                              
    
    End With
    
End Sub

 

 


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
Rot Word speichert Änderungen nicht. VBA Code das Problem?
11.10.2021 08:08:00 Gast94833
NotSolved