Userform an Zellposition binden und beim Scrollen

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Userform an Zellposition binden und beim Scrollen
von: Tietze
Geschrieben am: 01.05.2015 11:18:21

Mitwandern lassen.
Hallo!
habe folgendes Problem. Hab einen Kalender in Tabellenblatt 2. In einer Tabelle in Blatt 1 stehen Ereignisse mit Datum. Per Schleife werden für jedes Ereignis eine Userform (Userform, weil ich hierüber auch den Datensatz bearbeiten möchte)gebildet und in Tabellenblatt 2 (vor dem Kalender) vor das entsprechende Datumsfeld gesetzt. Jetzt mein Problem: Die Userform wird sehr ungenau vor das entsprechende Feld gesetzt. Kann man das verbessern? Thema Umrechnung Zellposition-Bildschirmposition? Und das nächste wäre das die Userfomen beim Scrollen der Kalendertabelle mitwandern sollen...also immmer im korrekten Datumsfeld bleiben sollen...Kann mir jemand helfen? Gruß Jan

Bild

Betrifft: AW: Userform an Zellposition binden und beim Scrollen
von: Tietze
Geschrieben am: 01.05.2015 11:27:38
Ergänzung:....habe mal die Datei hochgeladen...Die Userformerstellung erfolgt über Modul 4.
https://www.herber.de/bbs/user/97397.xlsm

Bild

Betrifft: AW: Userform an Zellposition binden und beim Scrollen
von: Hajo_Zi
Geschrieben am: 01.05.2015 11:52:31
Scrollen löst keine Aktion aus.


Bild

Betrifft: AW: Userform an Zellposition binden und beim Scrollen
von: Tietze
Geschrieben am: 01.05.2015 11:58:04
...ja aber wie könnte man die Problematik trotzdem lösen?

Bild

Betrifft: AW: Userform an Zellposition binden und beim Scrollen
von: Daniel
Geschrieben am: 01.05.2015 12:07:05
Hi
wird aufwendig.
auslösendes Element kann nur der Klick in eine Zelle sein, dh beim Scrollen in der Scrolleiste wandert die Userform nicht mit, sondern erst beim Klick in eine Zelle springt sie dort hin.
obs jetzt eine Funktion gibt, der aus den Zellkoordinaten Bildschrirmkoordinaten für die Userform macht, weiss ich nicht, ich will es nicht ausschließen.
ansonsten ergibt sich sie die Bildschirmposition der Zelle aus folgenden Werten:
- Linke obere Ecke es Excelfensters
- Zuschlag für Rahmembreite und Menühöhe
- Linke obere Ecke des Dateifensters innerhalb des Excelfensters
- Zuschlag für Rahmenbreite des Dateifensters
- Koordinate der Zelle abzüglich der Koorinate der linken obenen Zelle des sichtbaren bereichs.
ist also einiges zu rechnen mit ein paar Unbekannten.
Gruß Daniel

Bild

Betrifft: AW: Userform an Zellposition binden und beim Scrollen
von: Nepumuk
Geschrieben am: 01.05.2015 12:14:53
Hallo,
die Bildschirmposition einer Zelle lässt sich ganz einfach berechnen:

With ActiveWindow
    lngLeft = Clng(.PointsToScreenPixelsX(Cells(10, 3).Left / 0.75 * .Zoom / 100))
    lngTop = Clng(.PointsToScreenPixelsY(Cells(10, 3).Top / 0.75 * .Zoom / 100))
End With

Scrollen kann per Timer + ScrollRow überwacht werden. Nur, was soll passieren wenn die Zelle außerhalb des sichtbaren Bereichs liegt?
Gruß
Nepumuk

Bild

Betrifft: AW: Userform an Zellposition binden und beim Scrollen
von: Tietze
Geschrieben am: 01.05.2015 12:21:10
...na dann brauch der Eintrag (Userform nicht erscheinen)

Bild

Betrifft: AW: Userform an Zellposition binden und beim Scrollen
von: Daniel
Geschrieben am: 01.05.2015 12:36:49
Hi
das kann man dann einfach mit
If Intersect(ActiveCell, ActiveWindow.VisibleRange) überprüfen.
Gruß Daniel

Bild

Betrifft: AW: Userform an Zellposition binden und beim Scrollen
von: Tietze
Geschrieben am: 01.05.2015 12:18:34
...mir fehlt die Erfahrung..vielleicht wäre ein anderes Objekt als eine Userform besser...Evtl. geht es über ein msnObjekt oder ein Controlbutton (bleiben im Zellbereich auch beim Scrollen) den man beschriften kann..Hat jemand eine Idee?

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Userform an Zellposition binden und beim Scrollen "