Thema Datum  Von Nutzer Rating
Antwort
07.11.2016 11:45:34 Manuel
NotSolved
07.11.2016 22:07:21 Gast2519
NotSolved
08.11.2016 15:39:02 Manuel
NotSolved
08.11.2016 16:16:38 Gast35768
NotSolved
08.11.2016 17:00:36 Gast5412
NotSolved
08.11.2016 19:05:53 Manuel
NotSolved
08.11.2016 19:15:43 Gast14598
NotSolved
08.11.2016 20:04:01 Manuel
NotSolved
09.11.2016 21:47:31 Gast6339
NotSolved
09.11.2016 21:47:31 Gast22040
NotSolved
10.11.2016 07:05:32 Manuel
NotSolved
10.11.2016 09:12:30 Manuel
NotSolved
Rot VBA Word: Problem mit select case Abfrage
10.11.2016 11:00:19 Gast3246
NotSolved
10.11.2016 11:42:57 Gast52597
NotSolved
11.11.2016 17:18:51 Manuel
NotSolved
17.11.2016 17:50:16 Gast88128
NotSolved
18.11.2016 09:04:07 Gast25980
NotSolved

Ansicht des Beitrags:
Von:
Gast3246
Datum:
10.11.2016 11:00:19
Views:
577
Rating: Antwort:
  Ja
Thema:
VBA Word: Problem mit select case Abfrage

Hallo! Bin mir nicht sicher wie sich das delte auf die Variable auswirkt (löschen bzw. leeren). Würd deshalb eher an Stelle von delete ein = "" bevorzugen.

Die Schleifen unten hätte ich so probiert. Vg

Sub FileSave()
    Dim oDoc As Document
    Dim oVar As Variable
    Dim bVar As Boolean
    Dim lngID As Long
    Dim lngAsk As Long
    Dim vbCancel As Boolean, vbNo As Boolean, vbYes As Boolean, weiter As Boolean
    Set oDoc = ActiveDocument
    If Checkfields = True Then
        If oDoc.Path = "" Then
            FileSaveAs
        End If
        For Each oVar In oDoc.Variables
            If oVar.Name = "varID" Then
                lngAsk = MsgBox("Die Daten dieses Protokolls wurden bereits in die Geräteliste übertragen." & vbCr & _
                "Wurden Daten im Protokoll geändert, kann der Eintrag in der Geräteliste aktualisiert werden!" & vbCr & _
                vbCr & _
                "• Wähle 'Ja' um den vorhandenen Eintrag zu aktualisieren!" & vbCr & _
                "• Wähle 'Nein' um das Dokument ohne Datenübertragung zu speichern!" & vbCr & _
                "• Wähle 'Abbrechen' um den Vorgang zu beenden!", vbYesNoCancel)
                weiter = True
            Else
                If oVar.Name = "" Then ' Ich habe hier lediglich ein zweites If Statement eingebaut aber das funktioniert leider nicht.
                lngAsk = MsgBox("Die Daten dieses Protokolls wurden noch nicht in die Geräteliste übertragen!" & vbCr & _
                "Es besteht die Möglichkeit dies zu tun oder das Dokument ohne Datenübertragung zu speichern." & vbCr & _
                vbCr & _
                "• Wähle 'Ja' um die Daten in die Geräteliste zu übertragen!" & vbCr & _
                "• Wähle 'Nein' um das Dokument ohne Datenübertragung zu speichern!" & vbCr & _
                "• Wähle 'Abbrechen' um den Vorgang zu beenden!", vbYesNoCancel)
                weiter = True
                Else
                    weiter = false
                End If
            End If
            If weiter = True Then
                Select Case lngAsk
                Case 6 'vbYes
                    MsgBox ("Die Daten werden jetzt überschrieben und das Dokument gespeichert!")
                    lngID = oVar.Value
                    bVar = True
                    Exit For
                Case 7 'vbNo
                    MsgBox ("Das Dokument wird ohne Datenübertragung gespeichert!")
                    bVar = False
                    Exit For
                Case 2 'vbCancel
                    MsgBox ("Speichervorgang wird abgebrochen!")
                    GoTo lbl_Exit
                Case Else
                    MsgBox "Es ist etwas schief gelaufen!"
                    GoTo lbl_Exit
                End Select
            End If
           
         Next oVar
        If Not bVar Then
            oDoc.Variables("varID").Value = "0"
            oDoc.Save
       Else
          'nur speichern
            DataTransfer CStr(lngID)
       End If
        If Not oDoc.Saved Then oDoc.Save
    End If
lbl_Exit:
    Exit Sub
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
07.11.2016 11:45:34 Manuel
NotSolved
07.11.2016 22:07:21 Gast2519
NotSolved
08.11.2016 15:39:02 Manuel
NotSolved
08.11.2016 16:16:38 Gast35768
NotSolved
08.11.2016 17:00:36 Gast5412
NotSolved
08.11.2016 19:05:53 Manuel
NotSolved
08.11.2016 19:15:43 Gast14598
NotSolved
08.11.2016 20:04:01 Manuel
NotSolved
09.11.2016 21:47:31 Gast6339
NotSolved
09.11.2016 21:47:31 Gast22040
NotSolved
10.11.2016 07:05:32 Manuel
NotSolved
10.11.2016 09:12:30 Manuel
NotSolved
Rot VBA Word: Problem mit select case Abfrage
10.11.2016 11:00:19 Gast3246
NotSolved
10.11.2016 11:42:57 Gast52597
NotSolved
11.11.2016 17:18:51 Manuel
NotSolved
17.11.2016 17:50:16 Gast88128
NotSolved
18.11.2016 09:04:07 Gast25980
NotSolved