1
VBAにはまったく新しいですが、JavaとCでのプログラミングはかなり大変です。ByRef引数型の不一致、Excel VBA
残念なことに古典的なエラーと思われるものがあります。この問題を抱えた他の人々は、問題と同じ根拠を持っていないようです。その理由は、関数呼び出しでフラグが見つかった他の投稿のエラーです。関数定義上の私のエラーフラグ!
宣言:
Dim aktier() As String
ReDim aktier(antalTr) As String
Dim unikaAktier() As String
ReDim unikaAktier(antalTr) As String
Dim antalTr As Integer
Dim Kop As Integer
Kop = 1
Dim Salj As Integer
Salj = 2
Dim antalUnika As Integer
antalUnika = 0
forループで関数呼び出し。ここにはエラーフラグはありません。
For o = 1 To antalUnika
Cells(o + 1, 3).Value = snittInkopEllerSalj(unikaAktier(o), antalTr, Kop)
Cells(o + 1, 4).Value = snittInkopEllerSalj(unikaAktier(o), antalTr, Salj)
Next o
機能。最初の行にフラグを立てる。
Function snittInkopEllerSalj(bolag As String, antalTr As Integer, InUt As Integer) As Integer
Dim totKopSalj As Integer
Dim totAktier As Integer
totKopSalj = 0
totAktier = 0
For i = 1 To antalTr
If Sheet1.Cells(i, 4).Value = bolag Then
If InUt = 1 Then
If isCorrectTrans(i, InUt) = True Then
totKopSalj = totKop + Sheet1.Cells(i, 7)
totAktier = totAktier + Sheet1.Cells(i, 5)
End If
Else
If isCorrectTrans(i, InUt) = True Then
totKopSalj = totKop + Sheet1.Cells(i, 7)
totAktier = totAktier + Sheet1.Cells(i, 5)
End If
End If
End If
Next i
snittInkopEllerSalj = Round(totKopSalj/totAktier)
End Function
なぜこのエラーが発生するのか理解できません。私はすべてがよく定義されているように感じる?
'int'を使用する代わりに' long'を試してください。 – findwindow