1.6k Aufrufe
Gefragt in Tabellenkalkulation von
Hallo,

folgender Code macht mir Probleme (bzw. eine Zeile daraus):

For Each ws In ThisWorkbook.Worksheets
For Each N In ActiveWorkbook.Names
If N.Name = ws.Name & "!Timestamp_Author" Or N.Name = "'" & ws.Name & "'!Timestamp_Author" Then
Application.Goto Reference:=N.Name
ActiveCell = Date & " " & Time & Chr(10) & ActiveWorkbook.BuiltinDocumentProperties("Last Author").Value
Application.Goto Reference:=ActiveSheet.Cells(1, 1), Scroll:=True
End If
Next N
Next ws

Bei "ActiveCell = ..." steht der Cursor auch in Zellen, die NICHT den Namen "Timestamp_Author" besitzen, weil dieser nicht auf jedem Tabellenblatt vergeben ist. Trotzdem füllt er auch diese Zellen.

Ich vermute mal, dass ich mit "Application.Goto Reference:=N.Name" die betroffenen Zellen nicht wirklich selektiere. Aber mit select oder anderen Unschönheiten habe ich es auch nicht geschafft.

Kann mir jemand weiterhelfen?

Vielen Dank, Gruß
Jojo

4 Antworten

0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Jojo

warum nicht Range(N.name)=Date & " " & Time & Chr(10) & ActiveWorkbook.BuiltinDocumentProperties("Last Author").Value

Select ist in VBAnicht notwendig.

Gruß Hajo
0 Punkte
Beantwortet von
Hallo Hajo,

vielen Dank - das ist genau das, was ich gesucht habe. Ich nutze auch kein select, aber mit Range habe ich wohl irgendeinen Fehler gemacht.

Perfekt! Danke
Jojo
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Jojo,

Du benutzt nicht select. Aber mit Application.Goto Reference:=N.Name selektierst Du eine Zelle, das entspricht select, Activate usw.

Gruß Hajo
0 Punkte
Beantwortet von
Hallo Hajo,

alles klar - Danke für die Aufklärung ...

Gruß
Jojo
...