Sort von Active Controlls funktioniert nicht. Bug?

Diskutiere und helfe bei Sort von Active Controlls funktioniert nicht. Bug? im Bereich Microsoft Office im Windows Info bei einer Lösung; Hallo Community, ich habe ein kleines Anliegen. Per VBA erstelle ich für jede Reihe einen Button und passe ihn auf die Grösse einer Zelle an. Neben... Dieses Thema im Forum "Microsoft Office" wurde erstellt von Balin77, 12. Januar 2018.

  1. Balin77
    Balin77 Gast

    Sort von Active Controlls funktioniert nicht. Bug?


    Hallo Community,


    ich habe ein kleines Anliegen. Per VBA erstelle ich für jede Reihe einen Button und passe ihn auf die Grösse einer Zelle an. Neben .Name, .Caption und .OnAction verpasse ich ihm .Placement = xlMove (Ich weiss, das ist per Default eingeschaltet, habe es zu Illustrationszwecken aber hier aufgeführt). Wenn ich nun die Tabelle, in der sich der Button befindet, ordne, dann sollte sich der Button mit der dazugehörigen Reihe mitbewegen. Tut er aber nicht. Das ist deshalb besonders doof, weil er auf eine Zeile verweist, die sich in der selben Reihe befinden muss, wie der Button.


    Im VBA sieht das so aus: Bei .OnAction definiere ich den Parameter, den ich an die darauf folgende Funktion weitergebe.


    Set Rng = Activesheet.Cells(i, j)

    Set NewButton = Activesheet.Buttons.Add(Rng.Left, Rng.Top, Rng.Width, Rng.Height)

    Action = "'Button(" & chr34 & Activesheet.Range("b" & i) & chr34 & ")'"


    With NewButton
    .Placement = xlMove

    .OnAction = Action

    .Name = "BuyButton"

    .Caption = "Buy"

    End with

    .......


    Sub Button(ObjectToBuy As String)
    MsgBox (ObjectToBuy)
    End Sub


    Ich glaubte, das Problem umgehen zu können, indem ich bei Klick auf den Button die Reihe der unterliegenden Zelle auslese und dann dadurch auf die Relevante Zelle schliessen kann. Hier der Code:


    Sub Button()

    Dim b As Object, rw As Integer
    Dim message As String

    Set b = ActiveSheet.Buttons(Application.Caller)
    With b.TopLeftCell
    rw = .Row
    End With


    msgBox (Activesheet.Range("b" & rw)


    End Sub


    Aber jetzt komm das wirklich Kuriose. Wenn ich jetzt die Tabelle sortiere, dann verschiebt sich der Button noch immer nicht. Das wäre mir aber egal, da er jetzt ja einfach auf die Zelle in der Reihe verweist, in der er sich nun neuerdings befindet. Aber siehe da. Er gibt das Feld aus, in dem er sich befinden SOLLTE. Wenn sich der Button beispielsweise in Reihe 2 befindet, die nach der Sortierfunktion in Reihe 20 landet, dann verweist er auf das Feld in Reihe 20, obwohl er sich noch immer in Reihe 2 befindet.


    Die einzige Lösung, die ich gefunden habe ist, dass ich .Placement = xlFreeFloating gesetzt habe. Dann verweisen die Buttons nach wie vor auf die Zelle in der selben Reihe, wie sie sich gerade befinden. Aber das ist nicht ideal, da sich bei jeder Grössenanpassung der Tabelle die Buttons aus ihrer Position verschieben. Kennt da jemand eine Lösung? Ist das vielleicht ein Bug vom Excel?
     
  2. Claus Busch Win User

    Sort von Active Controlls funktioniert nicht. Bug?

    Hallo Raphi,

    wenn du die Kontrollkästchen analog den Buttons einfügst (Code), passen sie auch in die Zelle. Falls die Bezeichnung (Caption) über die Zelle hinausläuft, macht das nichts, solange das eigentliche Shape der Kontrollkästchen innerhalb der Zelle liegt.

    Claus
  3. Balin77 Win User

    Sort von Active Controlls funktioniert nicht. Bug?

    Hallo Andreas, ja das stimmt. Die ActiveX Checkbox passt ins Feld, während eine Checkbox der Form Controls trotz Anpassung der Grösse zu gross bleibt.

    Vielen Dank euch allen für die Tipps. Sie haben mir sehr geholfen. Ich schliesse somit diesen Thread.

    Liebe Grüsse

    Raphi
  4. Claus Busch Win User

    Sort von Active Controlls funktioniert nicht. Bug?

    Hallo Raphi,

    Buttons werden mit sortiert, wenn sie sich komplett innerhalb der Zelle befinden. Verkleinere daher die Buttons ein wenig:

    Set NewButton = Coins.Buttons.Add(Rng.Left + 0.005, Rng.Top + 0.005, Rng.Width - 0.01, Rng.Height - 0.01)

    Und ändere in SortAny folgende Codezeile für die letzte Spalte:

    LastColumn = Cells(1, Columns.Count).End(xlToLeft).Column

    Claus
  5. Andreas Killer Win User

    Sort von Active Controlls funktioniert nicht. Bug?

    Das Scenario ist zu aufwendig um es nachzubauen und zu testen.

    Lade bitte eine Beispieldatei auf einen Online File Hoster wie www.dropbox.com und poste den Download-Link hier.

    Andreas.
  6. Balin77 Win User

    Sort von Active Controlls funktioniert nicht. Bug?

    Danke Claus für den Trick mit dem verkleinerten Button. Das hat tatsächlich geklappt.

    Bei Checkboxes funktioniert das gleiche System irgendwie nicht. Die bleiben immer grösser als meine Zelle. Du kennst da nicht zufälligerweise auch noch ein Tricklein?

    Danke auch für die Korrektur meiner Sortierfunktion.

    Grüsse Raphi
  7. User Advert


    Hi,

    willkommen im Windows Forum!
Thema:

Sort von Active Controlls funktioniert nicht. Bug? - Microsoft Office

Die Seite wird geladen...

Sort von Active Controlls funktioniert nicht. Bug? - Similar Threads - Sort Active Controlls

Forum Datum

Controller verbunden, aber funktioniert nicht

Controller verbunden, aber funktioniert nicht: Hallo, seit ein paar Tagen habe ich das Problem, dass mein XBOX One S Controller, verbunden mit einem USB Kabel an den PC, nicht mehr funktioniert. Nach Anschließen des Controllers vibriert dieser...
Apps 28. Mai 2023

Controller verbunden, aber funktioniert nicht

Controller verbunden, aber funktioniert nicht: Hallo, seit ein paar Tagen habe ich das Problem, dass mein XBOX One S Controller, verbunden mit einem USB Kabel an den PC, nicht mehr funktioniert. Nach Anschließen des Controllers vibriert dieser...
Games und Spiele 28. Mai 2023

Xbox Elite 2 Controller Bug/Software defekt?

Xbox Elite 2 Controller Bug/Software defekt?: Hallo,ich habe seit Tagen ein Problem mit meinem Xbox Elite Series 2 Controller.Ich fasse mich „kurz“:Ich zockte ein Game und jedes Mal wenn ich für ca. 15 Sekunden stehen blieb, bewegte sich die...
Apps 5. April 2022

Xbox Elite 2 Controller Bug/Software defekt?

Xbox Elite 2 Controller Bug/Software defekt?: Hallo,ich habe seit Tagen ein Problem mit meinem Xbox Elite Series 2 Controller.Ich fasse mich „kurz“:Ich zockte ein Game und jedes Mal wenn ich für ca. 15 Sekunden stehen blieb, bewegte sich die...
Games und Spiele 5. April 2022

Controller funktioniert im Spiel nicht

Controller funktioniert im Spiel nicht: Hallo,Mein Controller verbindet sich bei den Geräten funktioniert dennoch nicht im Spiel oder auch nicht auf Steam im Big Picture Modus. Ich habe auch schon andere Controller versucht die sich...
Apps 20. November 2021

Controller funktioniert im Spiel nicht

Controller funktioniert im Spiel nicht: Hallo,Mein Controller verbindet sich bei den Geräten funktioniert dennoch nicht im Spiel oder auch nicht auf Steam im Big Picture Modus. Ich habe auch schon andere Controller versucht die sich...
Games und Spiele 20. November 2021

controller verbunden aber funktioniert nicht

controller verbunden aber funktioniert nicht: Hallo mein ps4 controller verbindet sich ohne ton mit dem pc und wird mir nirgendswo angezeigt außer auf discord als mikrofon und ich weiß jetzt nichtmerh was ich tuhen kann da es vor 1-4 std...
Games und Spiele 28. Februar 2021
Sort von Active Controlls funktioniert nicht. Bug? solved
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.