2

ワークブックにいくつかの基本的なデータベース機能を構築するクラス モジュールを作成しようとしています。私が直面している問題は、ワークシートをクラス メンバーとして追加しようとしていることです。エラーとして「プロパティの無効な使用」が表示され続けます。

私のクラス宣言:

Option Explicit

Private pboolLock As Boolean
Private pintColCount, pintRowCount As Integer
Private pWorksheet As Excel.Worksheet

'Lock bit properties:
Property Get boolLock() As Boolean
    boolLock = pboolLock
End Property
Property Let boolLock(boollockval As Boolean)
    pboolLock = boollockval
End Property

'Utility properties- no sets
Property Get ColCount() As Integer
    ColCount = pintColCount
End Property
Property Get RowCount() As Integer
    RowCount = pintRowCount
End Property

'Worksheet specific props
Property Set dpDefine(ByRef wks As Worksheet)
    Set pWorksheet = wks
End Property
Property Get dpDefine() As Worksheet
    dpDefine = pWorksheet
End Property

別のモジュール: クラスのインスタンス化:

Sub tryClass()
    Dim thisdp As New Cdatapage
    Dim iansTest As String

    iansTest = Sheets("typical datapage").Name
    'this works, so reference is being passed:
    MsgBox ("The name is " & iansTest)

    'this doesn't work:
    thisdp.dpDefine (Sheets("typical datapage"))
End Sub

助言がありますか?ありがとう。

4

1 に答える 1

1

そのSetプロパティなので、次のことが必要です。

Set thisdp.dpDefine = Sheets("typical datapage")

または、に変更dpDefineするLet場合は、できます。

thisdp.dpDefine = Sheets("xxx")
于 2011-12-07T15:48:17.173 に答える