Anyone know how to get the control type property of a VBA form?
Controls on Sharepoint VBA forms can be listed but I cant get the type as if its not an attribute or property:
Sub ListControls()
Dim i As Integer, St1 As String
St1 = "NAME" & Chr(9) & Chr(9) & "TOP" & Chr(9) & "LEFT" & Chr(9) & "WIDTH" & Chr(9) & "HEIGHT"
For i = 0 To Me.Controls.Count - 1
St1 = St1 & vbCr & Me.Controls(i).Name & Chr(9) & Me.Controls(i).Top & _
Chr(9) & Me.Controls(i).Left & Chr(9) & Me.Controls(i).Width & Chr(9) & Me.Controls(i).Height
Next i
MsgBox St1
Debug.Print St1
Me.Hide
End Sub
'''''''''''''''''''''''''''''''''''''''''''''''''''''''
Or export it to excel if a reference is set in the backend, but can't seem to find the type property, so I can rebuild it somewhere else:
Sub SendControls()
Dim xlap As Object
Dim WB1 As String 'Object
If xlap Is Nothing Then
'Excel wasn't open - open a new one
Set xlap = CreateObject("Excel.Application")
End If
xlap.Visible = True
With xlap
.Workbooks.Add
WB1 = ActiveWorkbook.Name
' Workbooks(WB1).Sheets(1).Range("A1").EntireColumn.Width = 20
Workbooks(WB1).Sheets(1).Range("A1").Value = "NAME"
Workbooks(WB1).Sheets(1).Range("B1").Value = "TYPE"
Workbooks(WB1).Sheets(1).Range("C1").Value = "TOP"
Workbooks(WB1).Sheets(1).Range("D1").Value = "LEFT"
Workbooks(WB1).Sheets(1).Range("E1").Value = "WIDTH"
Workbooks(WB1).Sheets(1).Range("F1").Value = "HEIGHT"
Workbooks(WB1).Sheets(1).Columns("A:A").ColumnWidth = 16.78
Workbooks(WB1).Sheets(1).Columns("B:B").ColumnWidth = 19
Dim i As Integer, St1 As String
St1 = "NAME" & Chr(9) & Chr(9) & "TOP" & Chr(9) & "LEFT" & Chr(9) & "WIDTH" & Chr(9) & "HEIGHT"
For i = 0 To Me.Controls.Count - 1
Workbooks(WB1).Sheets(1).Range("A" & i + 2).Value = Me.Controls(i).Name
'Workbooks(WB1).Sheets(1).Range("B" & i + 2).Value = Me.Controls(i).Name
Workbooks(WB1).Sheets(1).Range("C" & i + 2).Value = Me.Controls(i).Top
Workbooks(WB1).Sheets(1).Range("D" & i + 2).Value = Me.Controls(i).Left
Workbooks(WB1).Sheets(1).Range("E" & i + 2).Value = Me.Controls(i).Width
Workbooks(WB1).Sheets(1).Range("F" & i + 2).Value = Me.Controls(i).Height
St1 = St1 & vbCr & Me.Controls(i).Name & Chr(9) & Me.Controls(i).Top & _
Chr(9) & Me.Controls(i).Left & Chr(9) & Me.Controls(i).Width & Chr(9) & Me.Controls(i).Height
Next i
End With
Set xlap = Nothing
'Me.Controls .Add(bstrProgID:="Forms.CommandButton.1", Name:="But3", Visible:=True)
End Sub