Office: (Office 2013) Diagramm Blatt mit (neuen und besseren) ActiveX ScrollBar ausstatten nicht möglich!

Helfe beim Thema Diagramm Blatt mit (neuen und besseren) ActiveX ScrollBar ausstatten nicht möglich! in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, nach nun langem Suchen und Lesen habe ich mehr Fragen als Antworten. In verschiedenen Foren wird gesagt das ActiveX Elemente neuer... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Tauchmann, 14. Februar 2016.

  1. Tauchmann Erfahrener User

    Diagramm Blatt mit (neuen und besseren) ActiveX ScrollBar ausstatten nicht möglich!


    Hallo zusammen,

    nach nun langem Suchen und Lesen habe ich mehr Fragen als Antworten.
    In verschiedenen Foren wird gesagt das ActiveX Elemente neuer und besser sind da man mehr VBA Möglichkeiten hat. Nun wollte ich ein Diagrammblatt mit einem ActiveX ScrollBar ausstatten aber es geht nicht, nur die alte Version der Scrollbar funktioniert.

    Warum kann das „alte“ Element in ein Diagrammblatt eingebettet werden und die besserer neu Version (ActiveX) nicht?

    Mein Ziel ist es ein Diagrammblatt zu haben wo man z.B. mit VBA der Scrollbar neue Werte hinterlegen kann.

    SG
    Tauchmann
     
    Tauchmann, 14. Februar 2016
    #1
  2. Beverly
    Beverly Erfahrener User
    Hi,

    es ist nicht unbedingt richtig, dass die ActiveX-Steuerelemente im Tabellenblatt besser als die Formular-Steuerelemente sind, sie bieten nur von Haus aus schon mehr Möglichkeiten zum Programmieren und - vor allem - mehr Möglichkeiten zu ihrer Formatierung. Die Formularsteruelemente lassen sich aber ebenso gut programmieren, nur muss man dort anders vorgehen. Alleine ihre Formatierungsmöglichkeiten sind im Vergleich zu den ActiveX-Steuerelementen eingeschränkt. Sie haben aber auch gewisse Vorteile:

    1. verändern sie ihre Größe nicht bei Benutztung
    2. kann man nur sie in Diagrammblättern verwenden

    Weshalb das so ist, weiß nur MS, aber offensichtlich haben die AxtiveX-Steuerelemente doch auch programmtechnisch intern Defizite gegenüber den Formularsteuerelementen.

    Bis später,
    Karin
     
    Beverly, 14. Februar 2016
    #2
  3. Hallo!
    Dass ActiveX "neuer und besser" sein soll, kann man in dieser Allgemeinheit nicht stehen lassen!
    Im Gegenteil:
    Wenn die Formularsteuerelemente funktionieren, solltest Du es auch dabei belassen.
    ActiveX ist eine Windows-Komponente, daher läuft dies unter Mac NICHT.
    Wenn Du dennoch unbedingt umsteigen willst, solltest Du eine Datei hochladen (mit Formular-Steuerelementen).
    Dann findet sich sicherlich jemand, der Dir das umstellt.

    Gruß Ralf
     
  4. Tauchmann Erfahrener User

    Diagramm Blatt mit (neuen und besseren) ActiveX ScrollBar ausstatten nicht möglich!

    Hallo Karin,

    WOW, Danke für die ultra schnelle Antwort.

    Du hast geschrieben:
    Was meinst du damit? Hättest du ein Beispiel?
    Kennst du dazu vielleicht ein paar gute Links?

    In meine Test habe ich festgestellt das ich per Select das Shape erst auswählen muss um etwas zu editieren.
    Muss man das wirklich machen oder kann man das vermeiden? Ich habe hier im Forum gelernt das Select ein Macro ganz schön verlangsamen kann.

    SG
    Tauchmann
     
    Tauchmann, 14. Februar 2016
    #4
  5. Tauchmann Erfahrener User
    Hallo RPP63

    Danke für deine schnelle Antwort.
    Ich beschäftige mich das erste mal mit Steuerelementen (mit und ohne ActiveX). Nach meinen Recherchen wollte ich das neueste Format verwenden und das wiederrum hat mich dann zur Verwirrung gebracht.

    SG
    Tauchmann
     
    Tauchmann, 14. Februar 2016
    #5
  6. Beverly
    Beverly Erfahrener User
    Hi,

    den Formularsteuerelementen weist man die Makros zu - du schreibst sie also am günstigsten in ein allgemeines Modul. Du kannst die zugewiesenen Makros aber ganz normal im VBA-Editor ändern, ohne dass du das Shape dabei selektieren musst.

    Der generelle Unterschied in der Programmierung besteht darin, wie das Steuerelement angesprochen werden muss - das Formular-Steuerelement ist ein Shape, das ActiveX-Steuerelement ein OLE-Objekt. Aus diesem Grund haben beide Steuerelemente auch andere Eigenschaften, die folglich auch anders angesprochen werden müssen, um auf sie zugreifen zu können. Das WAS und WIE hängt aber ganz davon ab, was du konkret machen willst - und da wäre eine hochgeladene Arbeitsmappe hilfreich, um ganz konkret darauf eingehen zu können.

    Bis später,
    Karin
     
    Beverly, 14. Februar 2016
    #6
  7. Tauchmann Erfahrener User
    Hallo Karin,

    mein Test ist wirklich simpel, es dient zur Verdeutlichung damit ich später es richtig mache, also ein reines Lern File

    Mein Test der funktioniert
    Code:
    Sub ScrollBarChange()
        With ActiveSheet.Shapes("Bildlaufleiste1").Select
            With Selection
                .Min = 5
                .Max = 200
            End With
        End With
    End Sub
    Frage 1) Warum muss ich "Select" verwenden und kann nicht die Scrollbar dirket ansprechen?
    Das funktioniert nicht
    Code:
    Sub ScrollBarChange2()
        With ActiveSheet.Shapes("Bildlaufleiste1")
                .Min = 5
                .Max = 200
        End With
    End Sub
    Frage 2) Wie kann ich nachdem ich den Scrollbar verwendet habe (rechts oder links schieben) den Min und Max Werte neu vergeben? Bei ActiveX hatte ich ein Change Ereignis was ich auslösen konnte und somit automatisch ein Macro aufgerufen wurde.
    Wie mache ich das bei einem Steuerelement?

    SG
    Tauchmann
     
    Tauchmann, 14. Februar 2016
    #7
  8. Beverly
    Beverly Erfahrener User

    Diagramm Blatt mit (neuen und besseren) ActiveX ScrollBar ausstatten nicht möglich!

    Hi,

    keine Ahnung was du mit deinem Code ereichen willst.
    Ich benutze Application.Caller und löse es so, dass ich eine Zelle zum Vergleichen benutze, ob sich der Wert erhöht oder verringert hat.

    Bis später,
    Karin
     
    Beverly, 14. Februar 2016
    #8
  9. Tauchmann Erfahrener User
    Hallo Karin,

    in meinem Beispiel wird der Bildlaufleiste1 ein Min und Max übergeben.
    Die Min und Max Werte sollen dann später durch andere Macros bestimmt werden - wie gesagt es dient nur zum Verstehen und wird erst später erweitert.

    Wenn ich deinen Code richtig verstehe dann kann man mit dem Application.Caller alle Änderungen unterschiedlicher Shapes ein bestimmtes Macro starten lassen. Schicke Sache :)

    Okay ich werde erst Mal weiter rum probieren und wenn ich dann noch Fragen hätte melde ich mich in diesem Thread.
    Vielen Dank für deine Hilfe
    Tauchmann

    Dein Code:
    Code:
    Sub ScrollBar()
        With ActiveSheet.Shapes(Application.Caller)
            If Range("C6") < .OLEFormat.Object.Value Then
                .OLEFormat.Object.Min = .OLEFormat.Object.Min + 1
                .OLEFormat.Object.Max = .OLEFormat.Object.Max + 1
            Else
                If .OLEFormat.Object.Min - 1 >= 0 Then
                    .OLEFormat.Object.Min = .OLEFormat.Object.Min - 1
                    .OLEFormat.Object.Max = .OLEFormat.Object.Max - 1
                End If
            End If
            MsgBox "Minimum  " & .OLEFormat.Object.Min & vbLf & "Maimum  " & .OLEFormat.Object.Max
            Range("C6") = .OLEFormat.Object.Value
        End With
    End Sub
     
    Tauchmann, 14. Februar 2016
    #9
  10. Beverly
    Beverly Erfahrener User

    Korrekt. Indem du den Namen des Application.Caller abfragst, kannst du mittels Case-Anweisung den Code für mehrere Steuerelemente in ein gemeinsames Makro packen:

    Code:
    Sub ScollBars()
        With ActiveSheet.Shapes(Application.Caller)
            MsgBox .Name
            Select Case .Name
                Case "Scroll Bar 1"
                    '... Code 1
                Case "Scroll Bar 2"
                    '... Code 2
            End Select
        End With
    End Sub
    
    

    Du kannst selbstverständlich auch Steuerelementen unterschiedlichen Typs auf diesem Weg verschiedene Codes zuweisen:

    Code:
    Sub SteuerElement()
        With ActiveSheet.Shapes(Application.Caller)
            MsgBox .Name
            Select Case .Name
                Case "Scroll Bar 1"
                    '... Code 1
                Case "Button 1"
                    '... Code 2
                Case "Drop Down 3"
                    '... Code 3
            End Select
        End With
    End Sub
    
    

    Wobei ich es immer so halte: habe ich mehrere Steuerelemente vom selben Typ aber insgesamte gesehen unterschiedliche Typen, dann benutze ich jeweils für die mit demselben Typ ein eigenes Makro - das macht das ganze übersichtlicher als wenn man alles in ein gemeinsames Makro packt.


    Bis später,
    Karin
     
Thema:

Diagramm Blatt mit (neuen und besseren) ActiveX ScrollBar ausstatten nicht möglich!

Die Seite wird geladen...
  1. Diagramm Blatt mit (neuen und besseren) ActiveX ScrollBar ausstatten nicht möglich! - Similar Threads - Diagramm Blatt besseren

  2. Diagramm als Vollbild?

    in Microsoft Excel Hilfe
    Diagramm als Vollbild?: Diagramm als Vollbild? Hallo, ich hab in einem Arbeitsblatt einige Daten, und im gleichen Arbeitsblatt ein / mehrere dazugehörige(s) Diagramm(e). Ich möchte, wenn ich auf ein Arbeitsblatt...
  3. Diagramm als eigenes Blatt und Daten aus Array

    in Microsoft Excel Hilfe
    Diagramm als eigenes Blatt und Daten aus Array: Hallo Forum, ich habe folgendes Problem und ich finde keine passende Lösung. Also ich möchte gerne ein neues Diagramm in einem eigenen Arbeitsblatt erstellen. Das Diagramm soll ein X - Y...
  4. Drucken mehrerer Diagramm-Blätter auf eine Seite

    in Microsoft Excel Hilfe
    Drucken mehrerer Diagramm-Blätter auf eine Seite: Hallo, folgende Frage habe ich: Ich habe eine Excel-Datei, welche unter anderem auch verschiedene Diagramme (11 Stück) erstellt (die jeweils in einem eigenen Blatt sind, also nicht als Objekte in...
  5. Achsenskalierung: Werte aus Zelle holen (Diagramm in eigenem Blatt)

    in Microsoft Excel Hilfe
    Achsenskalierung: Werte aus Zelle holen (Diagramm in eigenem Blatt): Hallo, meine Datei besteht aus drei Blättern (siehe Anhang). Im ersten Blatt ("Alles") kann man im gelben Bereich ein x eintragen, wodurch die entsprechenden Werte ins Blatt "Nur Auswahl"...
  6. Grösse bei Diagramme Blatt

    in Microsoft Excel Hilfe
    Grösse bei Diagramme Blatt: Hallo zusammen Ich habe folgende Ausgangslage. Ich habe eine Excel - Tabelle, indem ich ca. 70 Diagramme in einzelnen Blätter abspeichere. Nun muss ich diese Diagramme in einen Word - Bericht...
  7. Blatt kopieren: dynamischen Diagramm - Bereichsnamen weg

    in Microsoft Excel Hilfe
    Blatt kopieren: dynamischen Diagramm - Bereichsnamen weg: Hallo Leute habe ein dynamisches Diagramm erstellt - mit lokalen Bereichsnamen (also nur für das jeweilige Arbeitsblatt gültig). Die Daten und das Diagramm sind im selben Arbeitsblatt. So weit...
  8. Werte-Blatt und Diagramm-Blatt in neue Mappe kopieren

    in Microsoft Excel Hilfe
    Werte-Blatt und Diagramm-Blatt in neue Mappe kopieren: Hallo, allerseits! Ich versuche gerade, aus einer bestehenden Auswertung einige Blätter in eine neue Mappe zu kopieren, um diese dann auf einem "Ergebnis"-Laufwerk ohne Makros abzuspeichern....
Schlagworte:
  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.
    Information ausblenden