VBA 함수를 사용할 수는 있지만 함수가 어떻게 작동하는지 이해할 수 없으므로 도움이됩니다. 계산 방법이 너무 길기 때문에 (기본 산술 * 15 000 행)VBA Excel - 변수 "Double"을 함수로 사용합니다.
내 문제는 다음과 같이 정의 된 두 변수 Qty_Level의 정의에서 온다 : I는 다음과 같이 정의 된 변수를 본 적이 없다
Dim Qty_Level(30) As Double
, 유사한 괄호의 부부와 함께 기능. 여기에 내 코드입니다 :
Sub cumul()
Dim i As Long
Dim j As Integer
Dim Qty_level(30) As Double
Dim Col_Niveau As Integer
Dim Col_Quantite As Integer
Dim Col_Resultat As Integer
i = InputBox("Veuillez indiquer le numéro de la première à analyser (numéro de ligne Excel)", "Ligne de départ")
Col_Niveau = InputBox("Veuillez indiquer le numéro de la colonne contenant les niveaux", "Niveaux")
Col_Quantite = InputBox("Veuillez indiquer le numéro de la colonne contenant les quantités", "Quantités")
Col_Resultat = InputBox("Veuillez indiquer le numéro de la colonne contenant les résultats", "Résultats")
Do While IsEmpty(Cells(i, Col_Niveau)) = False
If IsNumeric(Cells(i, Col_Quantite)) = True Then
Qty_level(Cells(i, Col_Niveau).Value) = Cells(i, Col_Quantite).Value
Cells(i, Col_Resultat).Value = 1
For j = 1 To Cells(i, Col_Niveau).Value
Cells(i, Col_Resultat).Value = Cells(i, Col_Resultat).Value * Qty_level(j)
Next j
End If
i = i + 1
Loop
End Sub
나는 이것이 어떻게 작동하는지 이해하지 않으며, 특히 For
루프는 Dim Qty_Level(30) As Double
정적 배열 Qty_Level
이 두 유형의 31 개 요소를 포함라고 선언하고 함께 Double(j)
'Dim Qty_level (30) As Double은 Qty_level을 Double의 30 요소 배열로 선언합니다. –
실제로 31 요소 배열로 @PatriciaShanahan : – varocarbas
옙 31 VBA에 오신 것을 환영합니다 –