Ich habe 2 Tabelle "PurposefulSample" und "skaliert". Dieses Makro wird für skaliert geschrieben.Visual Basic Max Funktion 1004 Fehler werfen
Nun, wenn ich diese ausführen, wirft es eine 1004 bei rowMax = Application.WorksheetFunction.Max (Range (src.Cells (Currow, 11), src.Cells (Currow, 37))).
Einige Zellen im angegebenen Bereich sind ebenfalls Zeichenfolgen. Wenige andere sind auch # N/A.
Noob in VB. Ich schätze jede Hilfe.
Sub stdInScaled()
Dim curCol, curRow
curRow = 2
Dim src As Worksheet
Set src = Worksheets("PurposefulSample")
Do While (src.Cells(curRow, 1).Value <> "")
curCol = 11
Do While (CStr(src.Cells(curRow, curCol).Value) <> "")
If (IsNumeric(src.Cells(curRow, curCol).Value)) Then
Dim rowMax
rowMax = Application.WorksheetFunction.Max(Range(src.Cells(curRow, 11), src.Cells(curRow, 37)))
If (rowMax > 1) Then
Cells(curRow, curCol).Value = 100 * CLng(src.Cells(curRow, curCol).Value)/rowMax
Else
Cells(curRow, curCol).Value = "No Business"
End If
Else
Cells(curRow, curCol).Value = "Data NA"
End If
curCol = curCol + 1
Loop
curRow = curRow + 1
Loop
End Sub
Put 'src.' vor Bereich auch so' ... WorksheetFunction.Max (src.Range (... ' –
Sie müssen sich durch die gesamte gehen Code und jedes Bereich Objekt sollte das Elternblatt als Präzedenzfall haben. Es gibt viele 'Zellen' ohne das Blattqualifikationsmerkmal. –
Ich erwartete, dass diese Zellen ohne Blattkennzeichen auf das aktuelle/aktive Blatt zeigen. – rookie