Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Formular-/ActiveX mit Makro tauschen

Forumthread: Formular-/ActiveX mit Makro tauschen

Formular-/ActiveX mit Makro tauschen
24.01.2021 00:57:34
Nubi
Hallo zusammen,
ich habe ein Formular mit gut und gerne 70 Kontrollkästchen (Formularsteuerelemente) von meinem Vorgänger übernommen.
Der Funktionalität halber wären nun aber ActiveX-Elemente hilfreich/nötig.
Kann vielleicht ein Experte aus diesem Forum ein Makro beisteuern, mit dem ich, unter Beibehaltung von Größe, Position und Zellverknüpfung, die Formular- durch ActiveX-Steuerelemente ersetzen kann?
Vielen Dank!
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Formular-/ActiveX mit Makro tauschen
24.01.2021 01:39:06
Nubi
Ja, den Beitrag kenne ich.
Aber für die notwendigen Änderungen reichen meine Kenntnisse schlicht nicht aus (s. mein Level).
Magst Du mir helfen?
Danke!
Anzeige
Nachfrage
24.01.2021 01:41:47
ralf_b
Hallo,
warum müssen die Elemente getauscht werden? Der Grund würde mich interessieren.
gruß
rb
AW: Nachfrage
24.01.2021 01:58:10
Nubi
Hallo!
Es geht um die Möglichkeit das Ausgabeformat zu editieren, was bei den alten Formularsteuerdingern ja nicht wirklich möglich ist.
Die Anwender*innen der Datei wünschen sich eine deutlichere Kenntlichmachung gesetzter Bedingungen, um Änderungen schneller erfassen zu können. den Wunsch möchte ich ihnen gerne erfüllen ohne stundenlang Element für Element und Verknüpfung für Verknüpfung manuell zu bearbeiten...
Anzeige
AW: Formular-/ActiveX mit Makro tauschen
24.01.2021 01:58:24
onur

Sub Drehfeld_Ersetzen()
Dim ws As Worksheet
Dim sh As Shape
Dim ole As OLEObject
Set ws = ActiveSheet
With ws
For Each sh In .Shapes
If sh.Type = msoFormControl Then
If sh.FormControlType = xlCheckBox Then
Set ole = .OLEObjects.Add(ClassType:="Forms.CheckBox.1", Left:=sh.Left, Top: _
=sh.Top, Width:=sh.Width, Height:=sh.Height)
sh.Delete
End If
End If
Next
End With
End Sub

Anzeige
AW: Formular-/ActiveX mit Makro tauschen
24.01.2021 02:18:49
Nubi
Ging schnell und ist schon ziemlich gut!
Aber geht das auch mit Beibehaltung der jeweiligen Zellverknüpfungen?
WAHR oder FALSCH lösen nämlich wiederum weitere Aktionen aus...
Aber schon mal Danke dafür!
AW: Formular-/ActiveX mit Makro tauschen
24.01.2021 02:24:03
onur

Sub Drehfeld_Ersetzen()
Dim ws As Worksheet
Dim sh As Shape
Dim ole As OLEObject
Set ws = ActiveSheet
With ws
For Each sh In .Shapes
If sh.Type = msoFormControl Then
If sh.FormControlType = xlCheckBox Then
Set ole = .OLEObjects.Add(ClassType:="Forms.CheckBox.1", Left:=sh.Left, Top: _
=sh.Top, Width:=sh.Width, Height:=sh.Height)
With sh.OLEFormat.Object
If .LinkedCell  "" Then
ws.Range(.LinkedCell).Value = .Value
ole.LinkedCell = .LinkedCell
End If
End With
sh.Delete
End If
End If
Next
End With
End Sub

Anzeige
AW: Formular-/ActiveX mit Makro tauschen
24.01.2021 02:32:32
Nubi
*** Wow, klasse, vielen Dank! ***
Gerne !
24.01.2021 02:34:08
onur
;
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