Gruppe
Dialog
Problem
Wie kann ich alle Bereichsnamen einer Arbeitsmappe in einer UserForm-ListBox auflisten und ändern?
ClassModule: frmNamen
Private Sub cmdEditieren_Click()
Dim sTxt As String
If txtOrtAktuell.Text = "" Then
Beep
MsgBox "Sie müssen zuerst eine Zeile mit Doppelklick auswählen!"
Exit Sub
End If
With txtOrtAktuell
sTxt = Right(.Text, Len(.Text) - InStr(.Text, "!"))
sTxt = Range(sTxt).Address
.Text = Left(.Text, InStr(.Text, "!")) & sTxt
End With
With lstNamen
ActiveWorkbook.Names(.ListIndex + 1).RefersTo = txtOrtAktuell.Text
ActiveWorkbook.Names(.ListIndex + 1).Name = txtNameAktuell.Text
.List(.ListIndex, 0) = txtOrtAktuell
.List(.ListIndex, 1) = txtNameAktuell
End With
End Sub
Private Sub cmdWeiter_Click()
Unload Me
End Sub
Private Sub lstNamen_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
With lstNamen
txtOrtAktuell.Text = .List(.ListIndex, 0)
txtNameAktuell.Text = .List(.ListIndex, 1)
End With
End Sub
Private Sub UserForm_Initialize()
Dim nme As Name
Dim arr()
Dim iRow As Integer
ReDim arr(0 To 1, 0)
For Each nme In ActiveWorkbook.Names
ReDim Preserve arr(0 To 1, iRow)
arr(0, iRow) = nme
arr(1, iRow) = nme.Name
iRow = iRow + 1
Next nme
lstNamen.Column = arr
End Sub
StandardModule: basMain
Sub CallForm()
frmNamen.Show
End Sub