Új hozzászólás Aktív témák

  • szricsi_0917

    tag

    válasz Mutt #44122 üzenetére

    Szia

    Sub kmfrissites_auto()
    Dim auto As Worksheet
    Dim utnyilvan As Worksheet
    Dim szerviz As Worksheet
    Dim lastrow
    Dim lastrow1
    Dim lastrow2
    Dim i As Long
    Dim a As Long
    Dim vMax As Double
    Dim xMax As Double
    'On Error GoTo kmfrissites_auto_Error
    Set auto = Sheets("Autó")
    Set utnyilvan = Sheets("Útnyilvántartó")
    Set szerviz = Sheets("Szerviznyilvántartó")
    lastrow = auto.Cells(Rows.Count, 1).End(xlUp).Row
    lastrow1 = utnyilvan.Cells(Rows.Count, 1).End(xlUp).Row
    lastrow2 = szerviz.Cells(Rows.Count, 1).End(xlUp).Row
    For i = 2 To lastrow
    For a = 10 To 21  
      auto.Range("V" & i) = Evaluate("=SumProduct(Max((Szerviznyilvántartó!B2:B" & lastrow2 & " = Autó!B" & i & ") * (INDIRECT(""'Szerviznyilvántartó'!"" & address(2," & a & ",4) & "":"" & INDIRECT(address(" & lastrow2 & "," & a & ",4)) = ""Motorolajcsere"") * Szerviznyilvántartó!G2:G" & lastrow2 & "))")

    Átalakítottam az általad javasolt megoldásra viszont újabb probléma merült fel.
    Több feltételt szeretnék hozzárakni. A probléma, hogy a 2. feltétel más méretű tömb mint a többi így ugye hibára fut a képlet.
    For ciklussal oldottam meg, hogy a 2. feltételnél oszloponként megy újra végig és mindig az utolsó legnagyobb értéket hagyja meg így a végén megkapom majd a maximum értéket.
    A probléma, hogy az indirect megoldással mindig érték hibára fut. Mi lehet a probléma?

    [ Szerkesztve ]

Új hozzászólás Aktív témák