Microsoft Excel

Herbers Excel/VBA-Archiv

VBA: Zelladresse als Text, Bezug variabel

Betrifft: VBA: Zelladresse als Text, Bezug variabel von: Robert
Geschrieben am: 31.07.2014 10:13:31

Hallo zusammen,

nach wie vor bin ich an der Historiefunktion dran.

Momentan werden bei Zelländerungen die geänderten Werte und die Zelladresse auf ein seperates Blatt geschrieben, wie ein Logfile.

Nun sind vor allem die Zeilennummern nicht gleichbleibend, es werden oft Zeilen eingefügt und gelöscht.

Momentan wird so geloggt:

    With Tabelle1
    .Unprotect Password:="zugang"
    .Rows(2).Insert
    .Rows(2).ClearFormats
    .Cells(2, 1) = Now
    .Cells(2, 2) = strSheetName
    .Cells(2, 3) = lngrowNumber
    .Cells(2, 4) = strColumnLetter
    .Cells(2, 6) = avntValues(lngRow - lngRowOffset, lngColumn - lngColumnOffset)
    .Cells(2, 7) = Environ("UserName")
    .Cells(2, 5) = mavntValues(lngRow, lngColumn)
    .Protect Password:="zugang", AllowFiltering:=True
      End With

im Array avntValues stehen die neuen, im Array mavntValues die Alten Daten.

Gibt es eine Möglichkeit, die Zelladresse im Logfile (also Spalte 3 und 4) mit Bezügen zu gestalten, so dass sie auch bei Löschung und Hinzufügen von Zeilen die richtigen Zelladressen anzeigen?
Darstellung getrennt in Zeile und Spalte ist kein Muss.

Viele Grüße
Robert

  

Betrifft: AW: VBA: Zelladresse als Text, Bezug variabel von: Tino
Geschrieben am: 31.07.2014 10:24:01

Hallo,
versuch es mal so und gib dem Bereich einen Namen und arbeite mit diesem im Code.

Gruß Tino


  

Betrifft: AW: VBA: Zelladresse als Text, Bezug variabel von: Robert
Geschrieben am: 31.07.2014 10:43:52

Hallo Tino,

Vielen Dank für die Idee, leider keine Option, da die Historie universal einsetzbar bleiben soll, also auch bei eingefügten Sheets z.B.

Bin schonmal ein Stück weiter, habe die richtige Formel gefunden, bekomme es aber nicht hin die Formel Mittels VBA in die Zelle einzufügen.

strSheetname ist der Tabellenname als String
strColumnletter ist der Spaltenbuchstabe als String
lngRowNumber ist die Zeilennummer als Zahl

Ich möchte nun Folgende Formel in die Zelle schreiben:
=Zelle("Adresse"; Tabelle1!A1)
Wie kann ich das per Vba einfügen?
.Cells(2, 3) = Formel hier
Vielen Dank im Vorraus


  

Betrifft: AW: VBA: Zelladresse als Text, Bezug variabel von: Robert
Geschrieben am: 31.07.2014 11:21:32

Neue Frage mit aussagekräftigem Titel hier gestellt:
https://www.herber.de/forum/messages/1373322.html


  

Betrifft: AW: VBA: Zelladresse als Text, Bezug variabel von: ChrisL
Geschrieben am: 31.07.2014 11:23:49

Hi Robert

Vielleicht so...

Private Sub Worksheet_Change(ByVal Target As Range)
With Tabelle1
      .Rows(2).Insert
      .Rows(2).ClearFormats
      .Cells(2, 1) = Now
      .Cells(2, 2).Formula = "=CELL(""Address""," & Target.Address(, , xlA1, 1) & ")"
End With
End Sub
cu
Chris


  

Betrifft: AW: VBA: Zelladresse als Text, Bezug variabel von: Robert
Geschrieben am: 31.07.2014 11:30:23

Hallo Chris,

Leider nicht, Target funktioniert in dem Fall leider nicht.

Habe die Frage nochmal mit besserem Titel und dem Aktuellen stand gestellt.
Link siehe im Beitrag weiter oben.

vielen Dank
Robert


  

Betrifft: AW: VBA: Zelladresse als Text, Bezug variabel von: Robert
Geschrieben am: 31.07.2014 11:33:31

Neue Frage mit aussagekräftigem Titel hier gestellt:
https://www.herber.de/forum/messages/1373322.html


 

Beiträge aus den Excel-Beispielen zum Thema "VBA: Zelladresse als Text, Bezug variabel"