Module.ProcOfLine-Eigenschaft (Access)
Die ProcOfLine-Eigenschaft gibt den Namen der Prozedur zurück, die eine bestimmte Zeile in einem Standardmodul oder einem Klassenmodul enthält. Schreibgeschützter String-Wert.
Syntax
Ausdruck. ProcOfLine (Line, ProcKind)
Ausdruck Eine Variable, die ein Module-Objekt darstellt.
Parameter
Name | Erforderlich/Optional | Datentyp | Beschreibung |
---|---|---|---|
Line | Erforderlich | Long | Die Nummer einer Zeile im Modul. |
ProcKind | Erforderlich | vbext_ProcKind | Die Art der Prozedur. Mögliche Einstellungen finden Sie unter "Hinweise". |
HinwBemerkungeneise
Das Argument ProcKind kann eine der folgenden vbext_ProcKind-Konstanten sein:
Konstante | Beschreibung |
---|---|
vbext_pk_Get | Eine Property Get-Prozedur. |
vbext_pk_Let | Eine Property Let-Prozedur . |
vbext_pk_Proc | Eine Sub- oder Function-Prozedur. |
vbext_pk_Set | Eine Property Set-Prozedur . |
Die ProcOfLine-Eigenschaft gibt für eine gegebene Zeilennummer den Namen der Prozedur zurück, die diese Zeile enthält. Da Kommentare und Kompilierungskonstanten unmittelbar vor einer Prozedurdefinition als Teil dieser Prozedur betrachtet werden, gibt die ProcOfLine-Eigenschaft möglicherweise den Namen einer Prozedur für eine Zeile zurück, die sich nicht im Textkörper der Prozedur befindet.
Die ProcStartLine-Eigenschaft gibt die Zeile an, in der eine Prozedur beginnt. Die ProcBodyLine-Eigenschaft gibt die Zeile an, in der die Prozedurdefinition beginnt (der Text der Prozedur).
Beachten Sie, dass das ProcKind-Argument angibt, ob die Zeile zu einer Sub - oder Function-Prozedur , einer Property Get-Prozedur , einer Property Let-Prozedur oder einer Property Set-Prozedur gehört. Um zu bestimmen, in welchem Prozedurtyp sich eine Zeile befindet, übergeben Sie eine Variable vom Typ Long an die ProcOfLine-Eigenschaft , und überprüfen Sie dann den Wert dieser Variablen.
Hinweis
Die ProcOfLine-Eigenschaft behandelt Sub - und Function-Prozeduren auf ähnliche Weise, unterscheidet jedoch zwischen den einzelnen Typen von Property-Prozeduren.
Beispiel
Die folgende Funktionsprozedur listet die Namen aller Prozeduren in einem angegebenen Modul auf.
Public Function AllProcs(ByVal strModuleName As String)
Dim mdl As Module
Dim lngCount As Long
Dim lngCountDecl As Long
Dim lngI As Long
Dim strProcName As String
Dim astrProcNames() As String
Dim intI As Integer
Dim strMsg As String
Dim lngR As Long
' Open specified Module object.
DoCmd.OpenModule strModuleName
' Return reference to Module object.
Set mdl = Modules(strModuleName)
' Count lines in module.
lngCount = mdl.CountOfLines
' Count lines in Declaration section in module.
lngCountDecl = mdl.CountOfDeclarationLines
' Determine name of first procedure.
strProcName = mdl.ProcOfLine(lngCountDecl + 1, lngR)
' Initialize counter variable.
intI = 0
' Redimension array.
ReDim Preserve astrProcNames(intI)
' Store name of first procedure in array.
astrProcNames(intI) = strProcName
' Determine procedure name for each line after declarations.
For lngI = lngCountDecl + 1 To lngCount
' Compare procedure name with ProcOfLine property value.
If strProcName <> mdl.ProcOfLine(lngI, lngR) Then
' Increment counter.
intI = intI + 1
strProcName = mdl.ProcOfLine(lngI, lngR)
ReDim Preserve astrProcNames(intI)
' Assign unique procedure names to array.
astrProcNames(intI) = strProcName
End If
Next lngI
strMsg = "Procedures in module '" & strModuleName & "': " & vbCrLf & vbCrLf
For intI = 0 To UBound(astrProcNames)
strMsg = strMsg & astrProcNames(intI) & vbCrLf
Next intI
' Message box listing all procedures in module.
MsgBox strMsg
End Function
Support und Feedback
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für