jajajajanneke
Gebruiker
- Lid geworden
- 16 jan 2008
- Berichten
- 58
Hoi,
Ik heb lang geleden eens een bestand gemaakt met een Workbook_BeforeSave event waarin ik aangeef dat het bestand niet opgeslagen kan/mag worden voordat bepaalde cellen gevuld zijn.
Vervolgens geef ik visueel aan welke velden nog gevuld moeten worden.
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim Legevelden(0 To 7) As String
Dim legeveld As Variant
Legevelden(0) = "C4"
Legevelden(1) = "G4"
Legevelden(2) = "G6"
Legevelden(3) = "C8"
Legevelden(4) = "C10"
Legevelden(5) = "C12"
Legevelden(6) = "C14"
Legevelden(7) = "C16"
'rode omranding weg halen
Range("B4:G28").Borders.LineStyle = xlNone
Range("G27").Font.Color = -16777216
'lege verplichte velden rood omranden
For Each legeveld In Legevelden
If IsEmpty(Range(legeveld)) Then
Range(legeveld).Borders.Color = -16776961
Range(legeveld).Borders.Weight = xlThick
Range("G27").Font.Color = -16776961
Cancel = True
End If
Next
If Cancel = True Then
MsgBox "Vul a.u.b. alle verplichte velden in"
End If
Exit Sub
End Sub
Maar nu wil ik iets aanpassen in het bestand maar... je raadt het al... ik krijg het bestand niet opgeslagen zonder eerst die cellen te vullen en ik wil het bestand uiteraard mét lege cellen opslaan.
Lang geleden wist ik nog hoe ik dit kon omzeilen maar ik ben het simpelweg vergeten.
Het is vast iets heel simpels :shocked:
Kan iemand me helpen?
Alvast bedankt.
Ik heb lang geleden eens een bestand gemaakt met een Workbook_BeforeSave event waarin ik aangeef dat het bestand niet opgeslagen kan/mag worden voordat bepaalde cellen gevuld zijn.
Vervolgens geef ik visueel aan welke velden nog gevuld moeten worden.
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim Legevelden(0 To 7) As String
Dim legeveld As Variant
Legevelden(0) = "C4"
Legevelden(1) = "G4"
Legevelden(2) = "G6"
Legevelden(3) = "C8"
Legevelden(4) = "C10"
Legevelden(5) = "C12"
Legevelden(6) = "C14"
Legevelden(7) = "C16"
'rode omranding weg halen
Range("B4:G28").Borders.LineStyle = xlNone
Range("G27").Font.Color = -16777216
'lege verplichte velden rood omranden
For Each legeveld In Legevelden
If IsEmpty(Range(legeveld)) Then
Range(legeveld).Borders.Color = -16776961
Range(legeveld).Borders.Weight = xlThick
Range("G27").Font.Color = -16776961
Cancel = True
End If
Next
If Cancel = True Then
MsgBox "Vul a.u.b. alle verplichte velden in"
End If
Exit Sub
End Sub
Maar nu wil ik iets aanpassen in het bestand maar... je raadt het al... ik krijg het bestand niet opgeslagen zonder eerst die cellen te vullen en ik wil het bestand uiteraard mét lege cellen opslaan.
Lang geleden wist ik nog hoe ik dit kon omzeilen maar ik ben het simpelweg vergeten.
Het is vast iets heel simpels :shocked:
Kan iemand me helpen?
Alvast bedankt.