하는 ByRef 인수 :VBA 내가 클래스 1, 라는 클래스를 생성하고 다른 모듈에, 나는이 같은 클래스를 사용할 불일치
Dim budgeunit As Class1
Sub Creattree()
Dim lvl1p, lvl1m, lvl1dm As Class1
Set lvl1p = New Class1
lvl1p.setName ("pear")
Set lvl1m = New Class1
lvl1m.setName ("Mango")
Set budgeunit = New Class1
budgeunit.addtochildren (lvl1p), budgeunit.addtochildren(lvl1m)
End Sub
을하지만 그것을 컴파일 할 때, 그것은합니다 (budgeunit.addtochildren을 강조 lvl1m) 그리고 Byref 인수 불일치. 나는 모든 논쟁을 선언했다, 나는 왜 이것이 일어나는 지 모른다. 클래스 코드 :
Dim Children() As Class1
Dim Parent() As Class1
Public level As Integer
Public name As String
Function setName(nm As String)
name = nm
End Function
Function addtochildren(node As Class1)
num = Children.Count
ReDim Children(num + 1) As String
Children(num) = node
node.addParent (Me)
End Function
변수 선언은 'lvl1dm'을 Class1로만 선언합니다. 다른 변수는 변형입니다. 명령문 분리 기호로 쉼표를 사용할 수 없습니다. 클래스 메소드는 아무런 값도 반환하지 않으므로 subs이어야합니다. 그런 다음 addtochildren 호출에서 괄호를 제거하십시오. Class1 코드에서 "addParent"의 정의는 어디에 있습니까? –
아, 말해줘서 고마워, 나는 여전히 VBA 모드에 빠지지 않았다 ... JAVA에서 추천 한 것처럼 표창이 작동하지 않는 것을 잊어 버렸다. –