Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Beskytte celle mod ny indtastning

176 views
Skip to first unread message

Flemming Lauritsen

unread,
Sep 1, 2001, 4:36:48 AM9/1/01
to
Jeg kunne godt bruge en funktion i excel regneark som tillader indtastning
af f. eks dato i en celle - når brugen så har "brugt" cellen kan der ikke
rette skrives i cellen igen uden en kode - kan der lade sig gøre ?


--
Med venlig hilsen
Flemming Lauritsen


Harald Staff

unread,
Sep 1, 2001, 2:38:58 PM9/1/01
to
Flemming

Skrivefeil er nokså utbredt. Jeg tror ikke dette er en god ide.

Beste hilsen Harald

"Flemming Lauritsen" <f...@post8.tele.dk> wrote in message
news:3b909e21$0$245$edfa...@dspool01.news.tele.dk...

Tonny Lauridsen

unread,
Sep 2, 2001, 5:43:19 PM9/2/01
to

"Flemming Lauritsen" <f...@post8.tele.dk> skrev i en meddelelse
news:3b909e21$0$245$edfa...@dspool01.news.tele.dk...

Karsten

unread,
Sep 3, 2001, 1:30:26 AM9/3/01
to
Hej Flemming

Er det dato eller andet tal / tekst?
Er det 1 celle eller er det flere celler?
Kan du bruge arkbeskyttelsen?
Der kan laves lidt kode som løser dit problem, men det kræver en lidt mere
specifikt uddybning af dit problem.


mvh. Karsten

"Flemming Lauritsen" <f...@post8.tele.dk> skrev i en meddelelse
news:3b909e21$0$245$edfa...@dspool01.news.tele.dk...

Jørgen Bondesen

unread,
Sep 3, 2001, 4:05:12 PM9/3/01
to
Hej Flemming
Der er mange måder at løse dit "problem" på.

Her er lidt inspiration:

'Dato cellen kan forsynes med Datavalideringsinfo.
'Sheet3 skal være xlsheetVeryHidden: Marker sheet i VBA - F4 - nederst
vælges xlsheetVeryHidden.
'Nedenstående er oprettet i ThisWorkbook
'NB: Pest eller kolera: Min måde at "navngive" sheeets på betyder at
rækkefølgen ikke må ændres.
'hvis der benyttes navngiven sheet, må navnet på sheet1 ikke ændres.
'Der kan naturligvis gøres brug af Beskyttelse - Beskyt projektmappe. SKAL
fjernes før du kan xlSheetVisible.

Private Sub Workbook_BeforeClose(Cancel As Boolean)

On Error GoTo line01
'Fortrydelsesret indtil filen lukkes
If Sheets(3).Range("B3").Value = "" And Sheets(1).Range("B3").Value >
#1/1/1900# Then Sheets(3).Range("B3").Value = Sheets(1).Range("B3").Value

'Måske smart at tilføje, hvis man selv piller og glemmer at
xlsheetveryhidden?
If Sheets(3).Visible = -1 Then Sheets(3).Visible = 2

Exit Sub

line01:
'Sletter med hård hånd "vrøvl" i datocellen
Sheets(1).Range("B3").Value = ""

'Måske smart at tilføje, hvis man selv piller og glemmer at
xlsheetveryhidden?
If Sheets(3).Visible = -1 Then Sheets(3).Visible = 2

End Sub


Private Sub Workbook_Open()
'Her fanger bordet for den alm. bruger
If Sheets(3).Range("B3").Value <> "" Then Sheets(1).Range("B3").Value =
Sheets(3).Range("B3").Value
End Sub


En anden mulighed vil være brug af SelectionChange.
Go' fornøjelse

Med venlig hilsen

Jørgen Bondesen


"Karsten" <kr...@get2net.dk> wrote in message
news:3DEk7.10$Vr4...@news.get2net.dk...

Jørgen Bondesen

unread,
Sep 4, 2001, 1:08:06 PM9/4/01
to
Hej Flemming.
Jeg har arbejdet lidt vider med opgaven:

Løsning 1 er en forbedring af gårsdagens løsningsforslag

'Dato cellen kan forsynes med Datavalideringsinfo.
'Sheet3 skal være xlsheetVeryHidden: Marker sheet i VBA - F4 - nederst
vælges xlsheetVeryHidden.
'Nedenstående er oprettet i ThisWorkbook
'NB: Pest eller kolera: Min måde at "navngive" sheeets på betyder at
rækkefølgen ikke må ændres.
'hvis der benyttes navngiven sheet, må navnet på sheet1 ikke ændres.
'Der kan naturligvis gøres brug af Beskyttelse - Beskyt projektmappe. SKAL
fjernes før du kan xlSheetVisible.

Private Sub Workbook_BeforeClose(Cancel As Boolean)

If Sheets(3).Range("B3").Value = "" And Sheets(1).Range("B3").Value = ""
Then
Exit Sub
ElseIf Sheets(3).Range("B3").Value = "" And
IsDate(Sheets(1).Range("B3").Value) = True Then


Sheets(3).Range("B3").Value = Sheets(1).Range("B3").Value

Else
If Sheets(1).Range("B3").Value <> "" And Sheets(1).Range("B3").Value
<> Sheets(3).Range("B3").Value Then
If IsDate(Sheets(1).Range("B3").Value) = False Then
Re01 = MsgBox("Indtastning i celle B3 er ugyldig.",
vbCritical + vbOKOnly, "Hilsen fra KONTROLLEN")
ElseIf Sheets(1).Range("B3").Value <>
Sheets(3).Range("B3").Value Then
Re03 = MsgBox("Du har ændret oprindelig dato i celle B3,
oprindelig dato bliver indskrevet", vbCritical + vbOKOnly, "Hilsen fra
KONTROLLEN")
End If


Sheets(1).Range("B3").Value = Sheets(3).Range("B3").Value

End If
End If


'Måske smart at tilføje, hvis man selv piller og glemmer at
xlsheetveryhidden?
If Sheets(3).Visible = -1 Then Sheets(3).Visible = 2
End Sub

****************** Løsning 2 er måske bare løsningen ?? ******************


'Dato cellen kan forsynes med Datavalideringsinfo.
'Sheet3 skal være xlsheetVeryHidden: Marker sheet i VBA - F4 - nederst
vælges xlsheetVeryHidden.

'Nedenstående er oprettet på sheet1, Worksheet_Change
'Her undgåes problem med sheets navngivning.

Private Sub Worksheet_Change(ByVal Target As Excel.Range)

Application.EnableEvents = False

If Target.Address(RowAbsolute:=False, ColumnAbsolute:=False) <> "B3"
Then
Application.EnableEvents = True
Exit Sub
End If

If Sheets("Hidden").Range("B3").Value = "" And Range("B3").Value = "" Then
Exit Sub
ElseIf Sheets("Hidden").Range("B3").Value = "" And
IsDate(Range("B3").Value) = True Then
Sheets("Hidden").Range("B3").Value = Range("B3").Value
Else
If Range("B3").Value <> "" And Range("B3").Value <>
Sheets("Hidden").Range("B3").Value Then
If IsDate(Range("B3").Value) = False Then
Re01 = MsgBox("Indtastning i celle B3 er ugyldig.", vbCritical +
vbOKOnly, "Hilsen fra KONTROLLEN")
ElseIf Range("B3").Value <> Sheets("Hidden").Range("B3").Value Then
Re03 = MsgBox("Du har ændret oprindelig dato i celle B3,
oprindelig dato bliver indskrevet", vbCritical + vbOKOnly, "Hilsen fra
KONTROLLEN")
End If
Range("B3").Value = Sheets("Hidden").Range("B3").Value
End If
End If
Application.EnableEvents = True

'Måske smart at tilføje, hvis man selv piller og glemmer at
xlsheetveryhidden?

If Sheets("Hidden").Visible = -1 Then Sheets("Hidden").Visible = 2
End Sub

Go fornøjelse


Med venlig hilsen

Jørgen Bondesen

NB: Jeg skal nok sende løsning 1 og 2 i 2 filer, men det bliver nok først i
morgen. Håber du kan vente så længe.

++++++++++++++++++++++++++++++++++++++++++++++++++++++


"Jørgen Bondesen" <bond...@cool.dk> wrote in message
news:9n0o51$vs0$1...@news.cybercity.dk...

0 new messages