...schau mal rein...
11.08.2009 08:39:40
Jörg-HH
Guten Morgen, Matthias
der Code steht hier:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Select Case Target.Name
Case Range("FGWahl").Name
With uf_FormatGrp_Anzeige
.Show
End With
Case Else
On Error Resume Next
Unload uf_FormatGrp_Anzeige
End Select
End Sub
Wenn ich dich richtig verstanden habe, dürfte das UF.Show auf diese Weise nur bei Klick auf FGWahl erscheinen - das tut es auch nur dann.
Ich habe bloß zufällig bemerkt (als ich was Anderes probieren wollte), daß der Code in Userform-Initialize angesprungen wird, wenn ich irgend eine andere Zelle anklicke. Wenn dann dort im Initialzie-Code was steht (zB mach Zelle soundso blau), dann wird das glatt ausgeführt, auch wenn ich nicht auf FGWahl klicke.
Ich meine damit: Warum wird UF-Initialize aktiviert, obwohl ich nix bei FGWahl gemacht habe?
Hier noch der Code aus dem Modul:
Option Explicit
Private Sub UserForm_Initialize()
'Die Größe des Spreadsheets muß hier festgelegt werden. Andernfalls (=in ReadMyData)
'würden sich die Abmessungen unkontrollierbar ändern.
Dim mySpSht As Spreadsheet
Set mySpSht = Me.SpSht_FormGrpAnzg
With mySpSht
.Height = 180
.Width = 160
End With
ReadMyData
End Sub
Private Sub ReadMyData()
'holt die Zellen aus ListeFGrSpSht ins Spreadsheet
Dim i As Long, n As Long
Dim mySpSht As Spreadsheet
Set mySpSht = Me.SpSht_FormGrpAnzg
With mySpSht
For i = 1 To 3
For n = 1 To 13
.Cells(n, i) = Worksheets("Listen").Range("ListeFGrSpSht").Cells(n, i)
Next n
Next i
End With
End Sub
Private Sub cmd_SpShtÜbernehmen_Click()
'übernimmt nach Markieren einer Formatgruppe auf dem Spreadsheet die gewählte Formatgruppe
'in die Zelle FGWahl (das ist TP-Daten!E92 zum Stand Juli 09)
ActiveCell = Me.SpSht_FormGrpAnzg.Selection.Value
End Sub
Private Sub cmd_SpShtSchliessen_Click()
Unload Me
End Sub
Grüße - Jörg