VBA-Programmierung in Microsoft Excel

Tutorial: Excel-Beispiele

Multiplikation eines Wertes in Abhängigkeit seiner Position

Gruppe

Funktion

Bereich

WAHL

Thema

Multiplikation eines Wertes in Abhängigkeit seiner Position

Problem

Im Bereich A1:E1 steht jeweils nur ein Wert. Wie kann ich diesen mit einem in Abhängigkeit seiner Spaltenposition stehenden Faktor multiplizieren?

Lösung

Folgende Formel: =INDEX(A;1;VERGLEICH(WVERWEIS(100;A;1;1);A;0))*WAHL(VERGLEICH(WVERWEIS(100;A;1;1);A;0);1,1;1,2;1,3;1,4;1,5)




ClassModule: Tabelle12

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
   Dim sPath As String, sFile As String, sWks As String
   Dim sFormula As String, sFormulaA As String, sFormulaB As String
   If Target.Column <> 1 Then Exit Sub
   If IsEmpty(Target) Then Exit Sub
   If Not IsNumeric(Target.Value) Then Exit Sub
   If Target.Value > 20 Then Exit Sub
   sPath = ThisWorkbook.Path
   sFile = "Test1.xls"
   If Dir(sPath & "\" & sFile) = "" Then
      Beep
      MsgBox "Testdatei Test1.xls wurde nicht gefunden!"
      Exit Sub
   End If
   sWks = "048199"
   sFormula = "VLOOKUP(A" & Target.Row & ","
   sFormula = sFormula & "'" & sPath & "\[" & sFile & "]" & sWks & "'!"
   sFormulaA = sFormula & "A:C,2,0)"
   sFormulaB = sFormula & "A:C,3,0)"
   Application.EnableEvents = False
   On Error GoTo ERRORHANDLER
   Target.Offset(0, 1).Formula = "=" & sFormulaA
   Target.Offset(0, 2).Formula = "=" & sFormulaB
   With Range(Target.Offset(0, 1), Target.Offset(0, 2))
      .Value = .Value
   End With
ERRORHANDLER:
   Application.EnableEvents = True
End Sub

    


Beiträge aus dem Excel-Forum zu den Themen Funktion und WAHL