Dim Control As Control If TypeName(frmMeny.Controls(Control.Name)) = "Object" Then Det bästa jag kan leda dig på spår med är detta. Kanon Åsa, tack! Jag hade nog gjort så här: mmm... kom på det också att mitt svar inte följde frågan.Hur kan man kontrollera en control?
For Each Control In frmMeny.Controls
If TypeOf Control Is Label Then
If IsControlInArray(Control) Then <--????
Hur ser en if sats ut som frågar om en Control är i en Array?Sv: Hur kan man kontrollera en control?
Sv:Hur kan man kontrollera en control?
<code>
Option Explicit
Private Sub Command1_Click()
Dim ctrl As Control
For Each ctrl In frmMeny.Controls
If TypeOf ctrl Is Label And ctrl.Name = "Label1" Then Label1(2).Caption = "Sven Testar"
Next
End Sub
</code>Sv:Hur kan man kontrollera en control?
'Här ett exempel
'Lägg till: Command1(0) & Command1(1) & Command2
Dim Control As Control
For Each Control In Me.Controls
If TypeName(Form1.Controls(Control.Name)) = "Object" Then
MsgBox Control.Name & "(" & Control.Index & ") Object!"
Else
MsgBox Control.Name & " inte object!"
End If
Next ControlSv: Hur kan man kontrollera en control?
Public Function HasIndex(ctrl As Control) As Boolean
HasIndex = False
On Error Resume Next
HasIndex = (ctrl.Index >= 0)
End Function
Sv:Hur kan man kontrollera en control?
Kom då på att lösa det med felhantering typ Martin:s förslag.
Men Åsa:s lösning är mycket korrekt och snygg.