1.4k Aufrufe
Gefragt in Tabellenkalkulation von
Hallo.

Ich suche eine Formel. Ich habe ein Tabellendokument mit mehreren kleinen Tabellen. Dort möchte ich, wenn ich z.B. in die Zellen B3-B6 oder D3-D6 im jeweiligen Feld ( also B3, B4, B5 oder B6 ectr. ) anklicke das dann die aktuelle Uhrzeit steht. Sobald ich aber ausversehen dort nochmals draufklicke darf sich diese Zeit aber nicht mehr ändern. Natürlich sollte man dieses Feld aber löschen können.

Liebe Supportnet Gemeinde, hat jemand eine Lösung hierfür? Gieb es da eine einfache Formel für die jeweiligen Felder?

VG

4 Antworten

0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Unbekanter,

mit Formel geht das nicht nur mit VBA.

Gruß Hajo
0 Punkte
Beantwortet von
Hi,

hast Du ein Beispiel dafür? VBA ist ja noch schlimmer für mich.

LG Sabine
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Sabine,

unten im Registe auf die Tabelle gehen, rechte Maustaste, code anzeigen. Code ins rechte Fenster kopieren.
Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'**************************************************
'* H. Ziplies *
'* 05.12.10 *
'* http://Hajo-Excel.de *
'**************************************************
Dim RaBereich As Range, RaZelle As Range
' Bereich der Wirksamkeit
Set RaBereich = Range("B3:B6, D3:D6")
' noch mehr Bereiche
'Set RaBereich = Union(Range("C11:AG11 , C13:AG13, C15:AG15 , C17:AG17 , C19:AG19 , C21:AG21 , C27:AE27 , C29:AE29, C31:AE31, C33:AE33"), _
' Range("C35:AE35, C37:AE37, C43:AG43, C45:AG45 , C47:AG47 , C49:AG49 ,C51:AG51 , C53:AG53 , C59:AF59 , C61:AF61 , C63:AF63 , C65:AF65"), _
' Range("C67:AF67 , C69:AF69 , C75:AG75 , C77:AG77 , C79:AG79 , C81:AG81 , C83:AG83 , C85:AG85 ,C91:AF91 , C93:AF93 , C95:AF95 , C97:AF97"), _
' Range("C99:AF99 , C101:AF101, C107:AG107 , C109:AG109 , C111:AG111 , C113:AG113 , C115:AG115 , C117:AG117 , C123:AG123 , C125:AG125"), _
' Range("C127:AG127 , C129:AG129 , C131:AG131 , C133:AG133 , C139:AF139 , C141:AF141 , C143:AF143 , C145:AF145 , C147:AF147 , C149:AF149"), _
' Range("C155:AG155, C157:AG157 , C159:AG159 , C161:AG161 , C163:AG163 , C165:AG165 , C171:AF171 , C173:AF173 , C175:AF175 , C177:AF177 "), _
' Range("C179:AF179 , C181:AF181, C187:AG187 , C189:AG189 , C191:AG191 , C193:AG193 , C195:AG195 , C197:AG197"))
Set RaBereich = Intersect(RaBereich, Range(Target.Address))
If Not RaBereich Is Nothing Then
For Each RaZelle In RaBereich
If RaZelle = "" Then
RaZelle = Time
RaZelle.NumberFormat = "hh:mm:ss"
End If
Next RaZelle
End If
Set RaBereich = Nothing
End Sub

Gruß Hajo
0 Punkte
Beantwortet von
Hallo.

Das hat super geklappt. Ich danke Dir, Hajo. Endlich kann ich schell und einfach mal etwas erledigen, ohne vie einzugeben.

VG Sabine
...