Avatar billede geertf Nybegynder
17. oktober 2003 - 09:34 Der er 6 kommentarer og
1 løsning

Kombinationsboks og kontrol (xls97)

Go' morgen.
I et ark har jeg indsat en kombinationsboks hvor brugere skal vælge adresser. Hvordan sikre jeg mig at brugerene har valgt en adresse før de afslutter/gemmer arket og hvordan sikre jeg mig at de har udfyldt bestemte celler før de afslutter?

hilsen
Geert

PS. Arket er som nævnt beskyttet, men kombinationsboksen indgår ikke i tabulatorrækkefølgen blandt de ulåste celler - kan man få den til det?
Avatar billede kabbak Professor
17. oktober 2003 - 10:19 #1
du skal kikke på disse i ThisWorkbook modulet

Private Sub Workbook_BeforeClose(Cancel As Boolean)
If 'Kode tjek om alle felter  og kombinationsboks  har værdi
else
Cancel = true
msgbox " ikke alt ar udfyldt"
end if
End Sub

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
IF 'Kode tjek om alle felter  og kombinationsboks  har værdi
else
Cancel = true
msgbox " ikke alt ar udfyldt"
end if
End Sub
Avatar billede kabbak Professor
17. oktober 2003 - 10:20 #2
msgbox " ikke alt er udfyldt"
Avatar billede aheiss Praktikant
17. oktober 2003 - 11:17 #3
Har du overvejet at skifte kombinationsboxen ud med  :
Data / Datavalidering / Indstillinger / Liste / kilde / dine adresser

Så kører tab helt af sig selv afhængig af hvad der er låst, og kabbaks kode skal kun indeholde nogle ranges.
Avatar billede geertf Nybegynder
17. oktober 2003 - 12:10 #4
Tak for forsøget kabbak, men jeg er desværre ikke på et niveau så jeg kan opfinde 'Kode tjek om alle felter og... Hvis du (eller andre) har et mere konkret bud, ville jeg blive fantastisk glad.
-> aheiss. Selvfølgelig, datavalideringen med liste er ganske enkel og genial, den havde jeg ikke lige tænkt på. Så mangler jeg bare tjekket af de specifikke celler - er der nogen der har et bud?
Avatar billede aheiss Praktikant
17. oktober 2003 - 12:43 #5
Du kunne jo prøve med:
indsættes i ThisWorkbook modulet, ret selv celler i række 3

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim omrode As Range
Set omrode = Range("B9,B10")  ' 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
Avatar billede geertf Nybegynder
17. oktober 2003 - 13:33 #6
Mange tak. Det virker meget fint. aheiss du må sende et svar :-)
Avatar billede aheiss Praktikant
17. oktober 2003 - 13:43 #7
Godt du kan bruge det. Svar kommer her :-)
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