Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Mussfeld sonst speichern nicht möglich | Herbers Excel-Forum


Betrifft: Mussfeld sonst speichern nicht möglich von: matthias
Geschrieben am: 01.12.2009 10:52:50

Hallo Profis,

Hab ne Frage: wie kann ich es machen, dass wen z.b eines der Felder welche in einer tabelle leer gelassen wird ist das speichern nicht möglich? man kann erst nur dann speicher wenn man überall eine eingabe gmacht hat...Beispiel Felder von A4 bis F20 müssen eine eingabe enthalten sonst ist das speichern nicht möglich?

Bedanke mich bereits jetzt für jede hilfe.

Gruss
Matthias

  

Betrifft: AW: Mussfeld sonst speichern nicht möglich von: {Boris}
Geschrieben am: 01.12.2009 11:14:19

Hi Matthias,

in das Klassenmodul "DieseArbeitsmappe":

Option Explicit

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Const DER_BEREICH As String = "Tabelle1!A4:F20"
If Application.CountA(Range(DER_BEREICH)) < Range(DER_BEREICH).Cells.Count Then
   MsgBox "Erst alle Zellen im Bereich " & DER_BEREICH & "füllen.", vbInformation, "Speichern  _
nicht möglich"
   Cancel = True
   Exit Sub
End If
End Sub
Grüße Boris


  

Betrifft: AW: Mussfeld sonst speichern nicht möglich von: matthias
Geschrieben am: 01.12.2009 11:19:32

Hi Boris,

Vielen Dank. Eine Frage: Den bereich muss ich ja definieren? Wie fülle ich das in deinen Code ein? Range (a1:b3)??

Danke und Gruss
matthias


  

Betrifft: Diesen Transfer... von: {Boris}
Geschrieben am: 01.12.2009 11:21:02

Hi Matthias,

..hätte ich Dir eigentlich zugetraut ;-)

Const DER_BEREICH As String = "Tabelle1!A4:F20"
Grüße Boris


  

Betrifft: AW: Diesen Transfer... von: matthias
Geschrieben am: 01.12.2009 11:24:24

Hi Boris,

Hab von VBA keine Ahnung...Mir ist schon klar das der Bereich die "Tabelle1!A4:F20" abbildet. Muss ich dann nichts an deinem Coder verändern betr. des bereichs?

Sorry, aber da blick ich noch nicht ganz durch.

Gruss
matthias


  

Betrifft: Ich hab Dir den Bereich... von: {Boris}
Geschrieben am: 01.12.2009 11:34:32

Hi Matthias,

...extra in die Variable DER_BEREICH gepackt, damit Du sonst nix am Code ändern musst.

Teste es doch einfach mal.

Grüße Boris


  

Betrifft: AW: Ich hab Dir den Bereich... von: matthias
Geschrieben am: 01.12.2009 12:34:09

ich erhalte ne fehlermeldung ....syntaxfehler

gruss
matthias


  

Betrifft: mach den _ weg. owT von: Rudi Maintaire
Geschrieben am: 01.12.2009 13:20:04




  

Betrifft: Nochmal kopierbar von: {Boris}
Geschrieben am: 01.12.2009 13:32:13

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Const DER_BEREICH As String = "Tabelle1!A4:F20" 'Bereich nur hier anpassen!!!
If Application.CountA(Range(DER_BEREICH)) < Range(DER_BEREICH).Cells.Count Then
   MsgBox "Erst alle Zellen im Bereich " & DER_BEREICH & "füllen.", vbInformation, _
   "Speichern nicht möglich"
   Cancel = True
End If
End Sub
Grüße Boris


  

Betrifft: AW: Nochmal kopierbar von: matthias
Geschrieben am: 02.12.2009 15:44:48

super danke...hat geklappt!


Beiträge aus den Excel-Beispielen zum Thema "Mussfeld sonst speichern nicht möglich"