Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Bildlaufleiste per makro erzeugen

Bildlaufleiste per makro erzeugen
19.01.2005 13:38:39
Gabor
Hallo Excelexperten,
Ich habe mit dem Rekorder aufgezeichnet:
In Zelle K6 soll eine Bildlaufleiste erzeugt werden, was auch klappt aber sie ist nach Erzeugung Wirkungslos.
Ich habe während der Aufzeichnug die Eigenschaften: linkedCel = J6 und Maximum =100 gesetzt. Nach der Aufzeichnung funktionierte das auch. Jetzt habe ich die Bildlaufleiste wieder gelöscht und wollte nun das Makro testen. Es wird auch eine Leiste erzeugt aber wenn man den Regler verschiebt ändert sich der Eintrag in der gelinkten Zelle nicht.
Man kann auch nicht mehr die Eigenschaften der Bildlaufleiste ansehen oder verändern.
Hier der Code von der Aufzeichnung:


Sub bildlaufleiste()
'
' bildlaufleiste Makro
    Range("L6").Select
    ActiveCell.FormulaR1C1 = "=100-RC[-2]"
    Range("J6").Select
    ActiveCell.FormulaR1C1 = "50"
    Range("K6").Select
    ActiveSheet.OLEObjects.Add(ClassType:="Forms.ScrollBar.1", Link:=False, _
        DisplayAsIcon:=False, Left:=657, Top:=65, Width:=62, Height:=13). _
        Select
    Application.CommandBars("Control Toolbox").Visible = False
End Sub
 
Eins vorweg, ist es möglich abhängig von anderen Zelleinträgen mehrere funktionierende Bildlaufleisten zu erzeugen?
Beispielswise:
steht in F6 ein Wert so erzeuge obenstehende Bildlaufleiste
steht in F7 ein Wert so erzeuge eine Bildlaufleiste unter der oberen mit den selben Eigenschaften nur ist die linkedCell jetzt J7
steht in F8 ein Wert ein Wert so erzeuge eine Bildlaufleiste unter der oberen mit den selben Eigenschaften nur ist die linkedCell jetzt J8
usw. In F stehen nach unten fortlaufende Werte, die Anzahl kann nicht vorher definiert werden, der Bereich liegt aber etwa zwischen 6 bis 20.
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bildlaufleiste per makro erzeugen
19.01.2005 18:10:30
Josef
Hallo Gabor!
Versuch's mal so:


      
Option Explicit
Sub makeScrollBars()
Dim oObj As OLEObject
Dim rng As Range
On Error GoTo ERRORHANDLER
Application.ScreenUpdating = 
False
'Vorhandene Scrollbars entfernen
For Each oObj In ActiveSheet.OLEObjects
   
If TypeName(oObj.Object) = "ScrollBar" Then
      oObj.Delete
   
End If
Next
For Each rng In Range("F6:F26")
   
If rng <> "" Then
   
   
Set oObj = ActiveSheet.OLEObjects.Add(ClassType:="Forms.ScrollBar.1", Link:=False, _
           DisplayAsIcon:=
False, Left:=0, Top:=0, Width:=0, Height:=0)
           
      
With oObj
         .Left = rng.Left + rng.Width
         .Top = rng.Top
         .Width = 62
         .Height = 13
         .LinkedCell = rng.Offset(0, 4).Address(0, 0)
         .Object.Min = 1
         .Object.Max = 100
      
End With
   
End If
Next
ERRORHANDLER:
Application.ScreenUpdating = 
True
End Sub 
Anzeige
AW: Bildlaufleiste per makro erzeugen
20.01.2005 02:19:02
Gabor
Sepp,
wieder ein Riesen Lob an dich klappt super.
Ich habe eine Weile gebraucht, bis ich sah wo die Location der Bildlaufleiste definiert ist weil ich sie vielleicht noch verschieben möchte.
Ich muss ja bald eine Art Hinweis in meine Tabellen einbinden, der auf deine aktive Mitarbeit verweist.
Nochmals ein großes Dankeschön.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige