Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1464to1468
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Objekt verschiebt sich innerhalb einer Multipage?

Objekt verschiebt sich innerhalb einer Multipage?
09.01.2016 19:27:24
Kasimir
Hallo an alle!
Ich habe da ein kleines Problem und hoffe, dass hier jemand eine Lösung dafür hat.
Ich habe eine UserForm mit einer Multipage, die aus 4 Seiten besteht. In einer der Pages (Seite2) befindet sich ein Frame mit einem ListView-Steuerelement.
Beim Öffnen der UserForm sind alle bis auf die 1. Seite ausgeblendet. Nachdem ich in einer ComboBox eine Auswahl getroffen habe, werden die Seiten eingeblendet und das ListView mit Daten gefüllt. Wenn ich nun auf die Page klicke, in der das ListView vorhanden ist, verschiebt sich das ListView etwas nach oben aus dem Frame heraus. Zu Verdeutlichung habe ich mal ein Bild hochgeladen
Userbild
Wenn ich dann die Pages wechsele und danach wieder auf die Page klicke, in der sich das ListView befindet, wird das ListView an der korrekten Position angezeigt. Auch hier zur Verdeutlichung ein Bild
Userbild
Weiß jemand, warum dieses Verhalten auftritt und wie ich das abstellen kann?
Danke Euch schon mal für die Hilfe
Kasimir

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Mir ist das noch etwas aufgefallen...
09.01.2016 19:57:55
Kasimir
Hallo!
Mir ist da noch etwas aufgefallen. Das Verschieben der ListView geschieht nur, wenn diese vorher mit Daten gefüllt wurde. Wechsele ich auf die Page, in der sich die ListView befindet, und diese ist leer, also ohne diese vorher mit Daten gefüllt zu haben, dann erscheint die ListView an der korrekten Position.
Eventuell hilft das ja bei dem Finden des Fehlers weiter?
Gruß
Kasimir

AW: Mir ist das noch etwas aufgefallen...
09.01.2016 20:14:17
Nepumuk
Hallo,
versuch es mal nach dem Seitenwechsel mit: ListView1.Refresh
Gruß
Nepumuk

AW: Mir ist das noch etwas aufgefallen...
09.01.2016 20:17:32
Kasimir
Hallo Nepumuk!
Danke Dir für Deine Antwort? Meinst Du das wie folgt?
Private Sub MultiPage1_Click(ByVal Index As Long)
ListView1.Refresh
End Sub
Gruß
Kasimir

Anzeige
AW: Mir ist das noch etwas aufgefallen...
09.01.2016 20:30:00
Nepumuk
Hallo,
wenn du nicht auf jeder Seite ein ListView hast, dann würde ich den Index abfragen und nur bei der betreffenden Seite den Refresh machen.
Gruß
Nepumuk

AW: Mir ist das noch etwas aufgefallen...
09.01.2016 21:39:49
Kasimir
Hallo Nepumuk!
Danke nochmal für die Hilfe. Also ich habe jetzt folgenden Code:
Private Sub MultiPage1_Click(ByVal Index As Long)
If MultiPage1.Value = 2 Then
ListView1.Refresh
End If
End Sub
Das Ergebnis ist aber noch das Gleiche. Fülle ich das ListView und rufe dann die Seite auf, ist das ListView verschoben. Rufe ich die Seite auf ohne das ListView vorher gefüllt zu haben, befindet es sich an der korrekten Position. Fülle ich dann, verbleibt das ListView an der korrekten Position.
Schon komisch. Eventuell noch eine Idee. Ich würde ja gerne die Datei hochladen, das geht aber aus Datenschutzgründen leider nicht. Ansonsten versuche ich morgen mal eine Beispieldatei zu erstellen, mit der Hoffnung, das darin das Gleiche Problem auftritt.
Gruß
Kasimir

Anzeige
AW: Mir ist das noch etwas aufgefallen...
09.01.2016 22:29:49
Nepumuk
Hallo,
versuch es mal mit Repaint:
If MultiPage1.Value = 2 Then Repaint
Gruß
Nepumuk

AW: Mir ist das noch etwas aufgefallen...
10.01.2016 05:46:54
Kasimir
Hallo Nepumuk!
Leider hat die Änderung auch keinen Erfolg gebracht. Ich habe mal die UserForm in eine andere Datei kopiert und lauffähig gemacht. Da kannst Du Dir, oder auch jemand anderes, mal ansehen, wie das Verhalten der ListView ist.
https://www.herber.de/bbs/user/102695.xlsm
Eventuell kommst Du, oder jemand anderes dahinter, woran es liegt. Danke nochmal für die bisherige Hilfe.
MfG
Kasimir

Anzeige
AW: Mir ist das noch etwas aufgefallen...
10.01.2016 09:51:34
Nepumuk
Hallo Kasimir,
teste mal:
Private Sub ComboBox16_Change()
    
    Dim lngPage As Long
    
    If ComboBox16.ListIndex >= 0 Then
        With MultiPage1
            .Pages(1).visible = True
            .Pages(2).visible = True
            .Pages(3).visible = True
        End With
        
        Call ListView_füllen
        
        With MultiPage1
            If .Value <> 2 Then
                lngPage = .Value
                .Value = 2
                .Value = lngPage
            End If
        End With
        
    Else
        With MultiPage1
            .Pages(1).visible = False
            .Pages(2).visible = False
            .Pages(3).visible = False
        End With
    End If
    ListView1.Top = 12
    DoEvents
    
End Sub

Gruß
Nepumuk

Anzeige
Es funzt...
10.01.2016 10:00:09
Kasimir
Hallo Nepumuk!
Suuuper, danke Dir, so funktioniert's. Vor allem wenn ich sehe, wie simpel die Lösung ist, bin ich schwer begeistert.
Dir noch ein schönes Restwochenende,
Kasimir

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige