FormulaLocal - schreibweise
31.01.2007 17:08:29
Werner
Wenn etwas gut funktioniert sollte man es nicht ändern. Ich möchte jedoch meine Formel
lieber zur besseren Übersicht in der FormulaLocal - schreibweise haben.Warum klappt es so nicht?
Wie bekomme ich bei ;TEXT(C76;""JJJJ-MM"") das C76 als aktive Zeile,
""C""&Zeile() geht nicht.
So klappt es nicht !!
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
'automatisches kopieren von Formeln sobald ein Datum in Spalte A geschrieben wird.
On Error GoTo ErrorHandler 'Fehlerbehandlung
If Not Intersect(Target, Range("A6:A10000")) Is Nothing Then
'If Target.Count = 1 Then
Target.Offset(0, 3).FormulaLocal = "=WENN(""A""&Zeile()<>"""";""A"";"""")" ' entspricht in Spalte D z.B =WENN(A76<>"";"A";"")
Target.Offset(0, 4).FormulaLocal = "=WENN(""B""&Zeile()<>"""";""B"";"""")"
Target.Offset(0, 5).FormulaLocal = "=WENN(""C""&Zeile()<>"""";""V"";"""")"
Target.Offset(0, 6).FormulaLocal = "=WENN(""C""&Zeile()<>"""";TEXT(C76;""JJJJ-MM"");"" "")" ' entspricht in Spalte G z.B ;=WENN(C76<>"";TEXT(C76;"JJJJ-MM");" ")
'ende kopieren
End If
ErrorHandler: Exit Sub 'Ende Fehlerbehandlung
End Sub
################################################
So klappt es
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
'automatisches kopieren von Formeln sobald ein Datum in Spalte A geschrieben wird.
On Error GoTo ErrorHandler 'Fehlerbehandlung
If Not Intersect(Target, Range("A6:A10000")) Is Nothing Then
'If Target.Count = 1 Then
Target.Offset(0, 3).FormulaR1C1 = "=IF(RC[-3]<>"""",""A"","""")" ' entspricht in Spalte D z.B=WENN(A76<>"";"A";"")
Target.Offset(0, 4).FormulaR1C1 = "=IF(RC[-3]<>"""",""B"","""")"
Target.Offset(0, 5).FormulaR1C1 = "=IF(RC[-3]<>"""",""V"","""")"
Target.Offset(0, 6).FormulaR1C1 = "=IF(RC[-4]<>"""",TEXT(RC[-4],""JJJJ-MM""),"" "")" ' entspricht in Spalte G z.B;=WENN(C76<>"";TEXT(C76;"JJJJ-MM");" ")
'ende kopieren
End If
ErrorHandler: Exit Sub 'Ende Fehlerbehandlung
End Sub
Wäre schön wenn ich eine Antwort bekäme
Tschüs Werner