Thema Datum  Von Nutzer Rating
Antwort
23.08.2021 12:54:13 ichh
NotSolved
Blau 2 Probleme
23.08.2021 13:10:30 Gast67192
NotSolved
23.08.2021 13:23:02 ichh
NotSolved
23.08.2021 13:27:48 Gast29089
NotSolved
23.08.2021 13:47:42 ichh
NotSolved
23.08.2021 14:02:30 Der Steuerfuzzi
NotSolved
23.08.2021 14:24:22 ichh
NotSolved
23.08.2021 14:57:59 Der Steuerfuzzi
NotSolved
23.08.2021 14:59:07 Gast12385
NotSolved
23.08.2021 15:23:19 ichh
NotSolved
23.08.2021 15:37:48 Gast17341
NotSolved
23.08.2021 16:26:52 Gast68875
NotSolved
23.08.2021 15:12:52 Gast36686
NotSolved

Ansicht des Beitrags:
Von:
Gast67192
Datum:
23.08.2021 13:10:30
Views:
535
Rating: Antwort:
  Ja
Thema:
2 Probleme

1) Die Membervariable baujahr hat den gleichen Namen wie deren Eigenschaft (Property). Das führt zu einem Namenskonflikt.

In VBA ist es üblich privaten Membervariablen ein m_ voranzustellen. (Namen von Properties beginnen üblichweise mit einem Großbuchstaben)


2)

Public Property Get baujahr() As String
baujahr = baujahr
End Property
 
Public Property Let baujahr(ByVal newValue As Integer)
baujahr = newValue
End Property

 

Das Baujahr hast du zuvor als Integer deklariert.

Ein Property hat üblicherweise den gleichen Rückgabetyp wie seine Membervariable.

ZWINGEND ist jedoch, das GET, LET, und SET immer den gleichen Rückgabetyp aufweisen. Bei dir ist das aber nicht der Fall - siehe rote Markierung.


Option Explicit
 
Private m_Baujahr As Integer
Private m_Farbe As String
 
Private Sub Class_Initialize()
  'Vorbelegte Werte
  m_Baujahr = 1997
  m_Farbe = "Grün"
End Sub
 
Public Property Get Baujahr() As Integer
  Baujahr = m_Baujahr
End Property
 
Public Property Let Baujahr(ByVal newValue As Integer)
  m_Baujahr = newValue
End Property

 

Grüße

PS: Auf Modulebene mit Dim deklarierte Variablen (=Membervariablen) am besten mit Private deklarieren - das ist verständlicher beim Lesen.


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
23.08.2021 12:54:13 ichh
NotSolved
Blau 2 Probleme
23.08.2021 13:10:30 Gast67192
NotSolved
23.08.2021 13:23:02 ichh
NotSolved
23.08.2021 13:27:48 Gast29089
NotSolved
23.08.2021 13:47:42 ichh
NotSolved
23.08.2021 14:02:30 Der Steuerfuzzi
NotSolved
23.08.2021 14:24:22 ichh
NotSolved
23.08.2021 14:57:59 Der Steuerfuzzi
NotSolved
23.08.2021 14:59:07 Gast12385
NotSolved
23.08.2021 15:23:19 ichh
NotSolved
23.08.2021 15:37:48 Gast17341
NotSolved
23.08.2021 16:26:52 Gast68875
NotSolved
23.08.2021 15:12:52 Gast36686
NotSolved