Formelergebnis in Variable speichern
Moin,
Ich bastel gerade an einem Excelvorlage zum Erstellen eines rudimentären Dienstplan.
So habe ich z.B. in Tabelle 1 A1 eine "Liste" mit Früh, Spät, Frei. In Tabelle 2 stehen die passenden Zeiten dazu.
Nun möchte ich in der z.B. "Früh" auswählen und in die jeweils aktive Zelle die passende Zeit schreiben.
Diese hole ich mir mit SVerweis.
Das Makro löse ich, wider besseren Wissens, mit F2 aus. Ein bessere Lösung ist mir nicht eingefallen.
Im Modul1 habe ich:
Unter "Arbeitsmappe" hab ich das eingedost:
Grundsätzlich funktioniert das soweit, außer daß ich beim Auslösen des Makros in der aktiven Zelle ein #WERT! erhalte.
Was mache ich falsch bzw. gibt es hierfür einen anderen Lösungsweg?
Lieben Dank im Voraus und Grüße,
Juweee
Ich bastel gerade an einem Excelvorlage zum Erstellen eines rudimentären Dienstplan.
So habe ich z.B. in Tabelle 1 A1 eine "Liste" mit Früh, Spät, Frei. In Tabelle 2 stehen die passenden Zeiten dazu.
Nun möchte ich in der z.B. "Früh" auswählen und in die jeweils aktive Zelle die passende Zeit schreiben.
Diese hole ich mir mit SVerweis.
Das Makro löse ich, wider besseren Wissens, mit F2 aus. Ein bessere Lösung ist mir nicht eingefallen.
Im Modul1 habe ich:
Sub WriteVal()
Dim oVal As Variant
Dim rAC As Range
Set rAC = ActiveCell
oVal = Application.Evaluate("=SVERWEIS(Tabelle1!A1;Tabelle2!A1:B3;2;FALSCH)")
rAC.Value = oVal
Set rAC = Nothing
End Sub
Unter "Arbeitsmappe" hab ich das eingedost:
Private Sub Workbook_Open()
Application.OnKey "{F2}", "WriteVal"
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.OnKey "{F2}"
End Sub
Grundsätzlich funktioniert das soweit, außer daß ich beim Auslösen des Makros in der aktiven Zelle ein #WERT! erhalte.
Was mache ich falsch bzw. gibt es hierfür einen anderen Lösungsweg?
Lieben Dank im Voraus und Grüße,
Juweee
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 340856
Url: https://administrator.de/contentid/340856
Ausgedruckt am: 22.11.2024 um 17:11 Uhr
1 Kommentar