Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
320to324
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
320to324
320to324
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Pflichtfelder mit Prüfung und Meldung

Pflichtfelder mit Prüfung und Meldung
14.10.2003 09:46:03
EXoTEc
Hallo, habe eine Excel Datei wo Pflichtfelder ausgefüllt werden müssen. Die vorarbeit hat schon jemand anders gemacht, wenn man auf drucken klickt erscheint die meldung das noch nicht alle Felder ausgefüllt wurden. Die Erweiterung soll jetzt sein das die Meldung angibt welche Felder noch nicht ausgefüllt sind. Ich habe leider keine Ahnung wie ich das machen soll, da ich nicht programmieren kann, bitte helft mir ! Hier ist der code vom Vorgänger:


Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = True
End Sub

Public Sub Workbook_BeforePrint(Cancel As Boolean)

Dim PruefIndexSeite1 As Integer
Dim PruefIndexSeite2 As Integer
Dim MsgTitel, MSGTEXT As String

MsgTitel = "Überprüfen der Eintragungen des Finanzierungsantrages vor Druck"

PruefIndexSeite1 = Worksheets("Pruefung").Range("B1").Value
PruefIndexSeite2 = Worksheets("Pruefung").Range("E1").Value

If PruefIndexSeite1 = 0 And PruefIndexSeite2 = 0 Then
Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = True
Exit Sub
End If

If PruefIndexSeite1 > 0 Or PruefIndexSeite2 > 0 Then
MsgBox "Auf der Seite 1 fehlen noch " & PruefIndexSeite1 & " Eintragungen" & Chr(10) _
& "und/oder auf der Seite 2 fehlen noch " & PruefIndexSeite2 & " Eintragungen" & Chr(10) _
& "des Finanzierungsantrages ! " & Chr(10) _
& "Bitte überprüfen Sie diese !", vbCritical, MsgTitel
Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = False
Cancel = True
Exit Sub
End If

End Sub


Private Sub Workbook_Open()
Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = False
End Sub


Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim PruefIndexSeite1_1 As Integer
Dim PruefIndexSeite2_2 As Integer
PruefIndexSeite1_1 = Worksheets("Pruefung").Range("B1").Value
PruefIndexSeite2_2 = Worksheets("Pruefung").Range("E1").Value
If PruefIndexSeite1_1 = 0 And PruefIndexSeite2_2 = 0 Then
Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = True
Else
Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = False
End If
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Pflichtfelder mit Prüfung und Meldung
14.10.2003 10:02:47
Dirk
Hallo.

So wie ich den Code verstehe hat Dein Vorgänger eine Abfrage ins Tabellenblatt "Prüfung" eingearbeitet. Ich geh mal davon aus, das in den Feldern "B1" und "E1" sowas wie eine "zählenwenn"-Funktion liegt. Darin sind dann wohl auch die Bezüge zu den Pflichtfeldern zu finden, die man dann abfragen und bei "Nicht-Ausfüllung" auch explizit angeben kann.
AW: Pflichtfelder mit Prüfung und Meldung
14.10.2003 10:24:42
EXoTEc
Ja genau, du hast es richtig verstanden, es soll halt nur noch eine Routine rein die augibt welche felder noch ausgefüllt werden müssen. Es sollen die namen der felder ausgegeben werden die noch nicht ausgefüllt wurden.

https://www.herber.de/bbs/user/1416.xls
Anzeige
AW: Pflichtfelder mit Prüfung und Meldung
14.10.2003 10:47:10
Dirk
Hallo.

Ich hoffe es klappt. Tausche einfach die

Sub aus. Is aber leider nur ne Schnell-Lösung.
Public 

Sub Workbook_BeforePrint(Cancel As Boolean)
Dim PruefIndexSeite1 As Integer
Dim PruefIndexSeite2 As Integer
'Dim MsgTitel, MSGTEXT As String
'MsgTitel = "Überprüfen der Eintragungen des Finanzierungsantrages vor Druck"
PruefIndexSeite1 = Worksheets("Pruefung").Range("B1").Value
PruefIndexSeite2 = Worksheets("Pruefung").Range("E1").Value
If PruefIndexSeite1 = 0 And PruefIndexSeite2 = 0 Then
Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = True
Exit Sub
End If
For i = 2 To 44
If Worksheets("Pruefung").Range("B" & i).Value = 1 Then
MsgBox ("Auf Blatt eins fehlt noch die Angabe zu " & Worksheets("Pruefung").Range("A" & i).Value & ".")
Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = False
Cancel = True
Exit Sub
End If
Next i
For j = 2 To 60
If Worksheets("Pruefung").Range("D" & i).Value = 1 Then
MsgBox ("Auf Blatt zwei fehlt noch die Angabe zu " & Worksheets("Pruefung").Range("C" & i).Value & ".")
Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = False
Cancel = True
Exit Sub
End If
Next i
End Sub

Anzeige
AW: Pflichtfelder mit Prüfung und Meldung
14.10.2003 11:52:25
EXoTEc
Super, vielen dank für deine Hilfe. Hier ist die komplette lösung:


Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = True
End Sub


Public Sub Workbook_BeforePrint(Cancel As Boolean)

Dim PruefIndexSeite1 As Integer
Dim PruefIndexSeite2 As Integer
Dim MELDUNGTEXT, MELDUNGTEXT1 As String
Dim MsgTitel, MSGTEXT As String

MELDUNGTEXT = "Fehlende Eintragungen auf Seite 1" & Chr(10) & "-------------------------------------------"
MELDUNGTEXT1 = "Fehlende Eintragungen auf Seite 2" & Chr(10) & "------------------------------------------"

MSGTEXT = "Auf der Seite 1 fehlen noch " & PruefIndexSeite1 & " Eintragungen" & Chr(10) _
& "und/oder auf der Seite 2 fehlen noch " & PruefIndexSeite2 & " Eintragungen" & Chr(10) _
& "des Finanzierungsantrages ! " & Chr(10) _
& "Bitte überprüfen Sie diese !"
MsgTitel = "Überprüfen der Eintragungen des Finanzierungsantrages vor Druck"

PruefIndexSeite1 = Worksheets("Pruefung").Range("B1").Value
PruefIndexSeite2 = Worksheets("Pruefung").Range("E1").Value

If PruefIndexSeite1 = 0 And PruefIndexSeite2 = 0 Then
Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = True
End If

For i = 2 To 44
If Worksheets("Pruefung").Range("B" & i).Value = 1 Then
MELDUNGTEXT = MELDUNGTEXT & Chr(10) & Worksheets("Pruefung").Range("A" & i).Value
End If
Next i

For i = 2 To 60
If Worksheets("Pruefung").Range("E" & i).Value = 1 Then
MELDUNGTEXT1 = MELDUNGTEXT1 & Chr(10) & Worksheets("Pruefung").Range("D" & i).Value
End If
Next i

If PruefIndexSeite1 > 0 Or PruefIndexSeite2 > 0 Then
MsgBox MELDUNGTEXT & Chr(10) & MELDUNGTEXT1, vbCritical, MsgTitel

Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = False
Cancel = True
Exit Sub
End If

End Sub


Private Sub Workbook_Open()
Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = False
End Sub


Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim PruefIndexSeite1_1 As Integer
Dim PruefIndexSeite2_2 As Integer
PruefIndexSeite1_1 = Worksheets("Pruefung").Range("B1").Value
PruefIndexSeite2_2 = Worksheets("Pruefung").Range("E1").Value
If PruefIndexSeite1_1 = 0 And PruefIndexSeite2_2 = 0 Then
Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = True
Else
Application.CommandBars("Worksheet Menu Bar").Controls("Datei").Controls("Senden an").Enabled = False
End If
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige