2015-11-08 108 views
0

everyone。这是我的代码。调试时它说:“VBA编译错误:方法或数据成员找不到”,并强调线:Familienkutsche.strFarbe =“布劳” 如果我outcomment它,它说,关于后面的线一样的东西。它不喜欢什么?一切都写在一块,所以为什么他不承认任何“strFarbe”或“Geschwindigkeit”?话虽如此,如果我删除Familienkutsche,只是离开.strFarbe =“布劳”一切正常。先谢谢你。VBA编译错误:未找到方法或数据成员

Option Explicit 

Public strFarbe As String 
Private bytTempo As Byte 
Private blnTempoSperre As Boolean 

Public Property Let Geschwindigkeit(Speed As Long) 
If (Speed > 250) Then 
    bytTempo = 250 
    blnTempoSperre = True 
Else 
    bytTempo = Speed 
    blnTempoSperre = False 
End If 
End Property 

Public Property Get Geschwindigkeit() As Long 
    Geschwindigkeit = bytTempo 
End Property 

Public Property Get abgeriegelt() As Boolean 
    abgeriegelt = blnTempoSperre 
End Property 



Public Sub Autos() 
Dim Familienkutsche As Auto 
Let Familienkutsche = New Auto 

Familienkutsche.strFarbe = "Blau" 
Familienkutsche.Geschwindigkeit = 320 
Debug.Print Familienkutsche.Geschwindigkeit 
Debug.Print Familienkutsche.abgeriegelt 
End Sub 
+4

这不会编译; '让Familienkutsche =新Auto'应该是'Set Familienkutsche = New Auto' –

+0

嗨,亚历克斯。感谢您的快速回复。我做了建议的更改,但它仍然不能编译并返回相同的错误。 =(((( – Lola

+0

是一个'Class'? – PatricK

回答

0

你的代码的第一部分必须是在类模块Auto

Public Sub Autos()必须在标准模块。然后,它的工作原理(与改变LetSet)。

输出:

250 
Wahr 
+0

内这些代码谢谢你,安德烈那的确是问题。我写的整个代码在另一个模块,而不是在类汽车之一。 – Lola

+0

你能不能解释一下为什么正是第一部分,而不是,比方说,第二个在那里我居然提新奥特 – Lola

+0

@Lola:你* *定义一个类模块类模块名称是类的名字 - 在这里'Auto'要?实际使用的类,实例化它('设置Familienkutsche =新Auto'),这通常发生在一个标准模块中的功能或子有许多网页描述这个更详细,例如:http://www.cpearson。 com/excel/classes.aspx – Andre

相关问题