AW: Makro ausführen, wenn....
18.03.2005 08:48:45
Josef
Hallo Volker!
Ich habe es befürchtet, dass ich mich nicht klar ausgedrückt habe.
Ich habe bei mir folgendes Makro gefunden:
Sub Markier_E()
Dim C As Range, ErgBereich As Range
Dim laR As Long
laR = Cells(Rows.Count, 1).End(xlUp).Row
For Each C In Range("E1:E" & laR)
If C.Offset(0, -1).Value <> "" Then
Set ErgBereich = C
Exit For
End If
Next C
If ErgBereich Is Nothing Then
Exit Sub
Else
For Each C In Range("E1:E" & laR)
If C.Offset(0, -1).Value <> "" Then
Set ErgBereich = Application.Union(ErgBereich, C)
End If
Next C
ErgBereich.Select
Set ErgBereich = Nothing
End If
End Sub
Mit diesem Makro erfolgt in Spalte E eine Markierung an jenen Stellen wie auch Werte in spalte A vorhanden sind. Danach möchte ich z.B. folgendes Makro durchführen lassen:
Sub past()
Dim rngCell As Range
For Each rngCell In Selection
rngCell.FormulaR1C1 = _
"=IF(ISNA(VLOOKUP(R[-22]C[5],'H:\SVA_Import\[SUBKAPITEL.xls]SUBKAPITEL'!R3C1:R2501C9,9,)),"""",VLOOKUP(R[-22]C[5],'H:\SVA_Import\[SUBKAPITEL.xls]SUBKAPITEL'!R3C8:R2501C9,2,))"Next
End Sub
Man müßte, glaube ich, das Makro Markier_E insoweit ändern, dass eine Markierung in Spalte e an jenen Stellen erfolgt, wo z.B. in Spalte A die ersten 2 Zeichen einer 7 stelligen Zahl eine 19 ergeben. Oder 18.
Josef