Avatar billede geertf Nybegynder
28. oktober 2003 - 10:25 Der er 4 kommentarer og
1 løsning

Kontrol af cellerværdier - VB i Excel97

Jeg har tidligere fået hjælp til at lave nedenstående kontrol af nogle celler, og den virker fint. Nu vil jeg imidlertid meget gerne kunne give brugere af arket valgte om de vil forsætte med at gemme uden at udfylde cellerne, eller om de vil gå tilbage (som den gør nu).
Jeg kan desværre ikke få min VbYesNo til at virker (jeg er meget grøn i det her).

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim omrode As Range
Set omrode = Range("A2,A3,A5")  ' Indsæt dine celler
For Each cell In omrode
If cell.Value = "" Then
Cancel = True
MsgBox ("Celle " & cell.Address & " er ikke udfyldt")
End If
Next
End Sub

På forhånd tak for hjælpen
GF
Avatar billede kabbak Professor
28. oktober 2003 - 11:00 #1
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim omrode As Range
Set omrode = Range("A2,A3,A5")  ' Indsæt dine celler
For Each cell In omrode
If cell.Value = "" Then
Cancel = True
svar = MsgBox("Celle " & cell.Address & " er ikke udfyldt, skal jeg fortsætte ?.", vbYesNo)
If svar = vbYes Then
Cancel = False
ActiveWorkbook.Save
Else
Cancel = True
Exit Sub
End If
End If
Next
End Sub

noget i den stil
Avatar billede kabbak Professor
28. oktober 2003 - 11:01 #2
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim omrode As Range
Set omrode = Range("A2,A3,A5")  ' Indsæt dine celler
For Each cell In omrode
If cell.Value = "" Then
Cancel = True
svar = MsgBox("Celle " & cell.Address & " er ikke udfyldt, skal jeg fortsætte ?.", vbYesNo)
If svar = vbYes Then
Cancel = False
ActiveWorkbook.Save
Exit Sub
Else
Cancel = True
Exit Sub
End If

lige en lille ændring
End If
Next
End Sub
Avatar billede kabbak Professor
28. oktober 2003 - 11:03 #3
det går godt med klippe klistre ;-)

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim omrode As Range
Set omrode = Range("A2,A3,A5")  ' Indsæt dine celler
For Each cell In omrode
If cell.Value = "" Then
Cancel = True
svar = MsgBox("Celle " & cell.Address & " er ikke udfyldt, skal jeg fortsætte ?.", vbYesNo)
If svar = vbYes Then
Cancel = False
ActiveWorkbook.Save
Exit Sub
Else
Cancel = True
Exit Sub
End If
End If
Next
End Sub


lige en lille ændring
Avatar billede geertf Nybegynder
28. oktober 2003 - 11:19 #4
Helt perfekt, lige hvor jeg tænkte på. Mange tak - smidder du et svar :-)
Avatar billede kabbak Professor
28. oktober 2003 - 11:20 #5
et svar ;-)))
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester