--
Med venlig hilsen
Flemming Lauritsen
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...
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...
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...
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...