Herbers Excel-Forum - das Archiv

Steuerelement einsetzen

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

Betrifft: Steuerelement einsetzen
von: Werner

Geschrieben am: 31.03.2005 16:19:38
Hallo zusammen, habe da eine blöde Frage und zwar wenn folgender VBA Code angeführt wird, wie stelle ich es an, (statt doppelklick) ein Steuerelement sprich Button einzusetzen. Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Im voraus besten dank
Werner
Bild

Betrifft: AW: Steuerelement einsetzen
von: c0bRa

Geschrieben am: 31.03.2005 16:21:55
hallo...
also wennste den code ausführen willst beim drücken des buttons, dann benenn des teil um (möglichst nen einfachen jedoch aussagekräftigen namen button1(...) oder so) und weiß es dem button zu...

Rückmeldung nicht vergessen...
c0bRa
Bild

Betrifft: AW: Steuerelement einsetzen
von: Werner

Geschrieben am: 31.03.2005 16:49:11
Hallo cobra, wie soll ich den diesen Namen ändern, dann bekommt ich sofort eine Fehlermeldung.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Kannst Du mir das etwas verständlicher erklären.
Gruss und Danke für deine Bemühung
Werner
Bild

Betrifft: AW: Steuerelement einsetzen
von: ransi

Geschrieben am: 31.03.2005 17:09:56
hallo werner
habe grad mal im kaffesatz gelesen.
du hast code?
der sieht ungefähr so aus:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
code
End Sub

nun möchtest du den code nicht mit doubleclick im tabellenblatt starten,
sondern mit click auf einen button?
ransi
Bild

Betrifft: AW: Steuerelement einsetzen
von: Werner
Geschrieben am: 31.03.2005 18:00:21
Hallo Ransi, da hast Du vollkommen richtig gelesen, kannst Du mir da helfen???
im voraus besten Dank
Werner
Bild

Betrifft: AW: Steuerelement einsetzen
von: ransi

Geschrieben am: 31.03.2005 18:13:00


      
hallo werner
geh mal so vor:
füge einen commandbtton aus der steuerelementetoolbox 
in deine tabelle ein.
dann eine doppelclick darauf.
(Alternativ:
rechte maus
code anzeigen)
dann kommt ein fenster das sieht etwa so aus:
Private Sub CommandButton1_Click()
End Sub
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'
'code
'
End Sub
jetzt schneidest du mal
'
'code
'
aus und fügst ihn hier ein.
Private 
Sub CommandButton1_Click()
'
'code
'
End Sub
bestimmt wirst du laufzeitfehler bekommen weil der code im 
Private Sub Worksheet_BeforeDoubleClick auf target zugeschnitten ist. die kann man aber 
korrigieren.
wenn du es nicht schaffst, lade mal eine beispieltabelle mit dem code drin hoch.
ransi 

     Code eingefügt mit Syntaxhighlighter 3.0


Bild

Betrifft: AW: Steuerelement einsetzen
von: Werner

Geschrieben am: 31.03.2005 18:26:40
Hallo Ransi, das mit dem Code ausschneiden, oder Kopieren ist kein Problem, aber ich bekomme sofort eine Fehlermeldung. Hier ist der Code, kannst Du ihn etwas abändern.
Gruss Werner
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
' Diagonalen in Zelle
Dim RaBereich As Range
' Bereich der Wirksamkeit
Set RaBereich = Range("B3:K25")
' ActiveSheet.Unprotect
' überprüfen ob Zelle im vorgegebenen Bereich
If Not Intersect(Target, RaBereich) Is Nothing Then
' Diagonalen
' dieser Vergleich (ob linien schon vorhanden sind)
If Target.Borders(xlDiagonalDown).LineStyle = 1 Then
With Target
.Borders(xlDiagonalDown).LineStyle = xlNone
.Borders(xlDiagonalUp).LineStyle = xlNone
End With
Else
With Target
.Borders(xlDiagonalDown).LineStyle = xlContinuous
.Borders(xlDiagonalDown).Weight = xlThick
.Borders(xlDiagonalUp).LineStyle = xlContinuous
.Borders(xlDiagonalUp).Weight = xlThick
.Borders(xlDiagonalUp).ColorIndex = xlAutomatic
End With
End If
Cancel = True
End If
Set RaBereich = Nothing
' ActiveSheet.Protect
End Sub

Bild

Betrifft: AW: Steuerelement einsetzen
von: ransi

Geschrieben am: 31.03.2005 18:40:57


      
hallo werner
habe einfach target durch activecell ersetzt.
Private 
Sub CommandButton1_Click()
Dim RaBereich As Range
    
' Bereich der Wirksamkeit
    Set RaBereich = Range("B3:K25")
    
' ActiveSheet.Unprotect
    ' überprüfen ob Zelle im vorgegebenen Bereich
    If Not Intersect(ActiveCell, RaBereich) Is Nothing Then
        
' Diagonalen
        ' dieser Vergleich (ob linien schon vorhanden sind)
        If ActiveCell.Borders(xlDiagonalDown).LineStyle = 1 Then
            
With ActiveCell
                .Borders(xlDiagonalDown).LineStyle = xlNone
                .Borders(xlDiagonalUp).LineStyle = xlNone
            
End With
        
Else
            
With ActiveCell
                .Borders(xlDiagonalDown).LineStyle = xlContinuous
                .Borders(xlDiagonalDown).Weight = xlThick
                .Borders(xlDiagonalUp).LineStyle = xlContinuous
                .Borders(xlDiagonalUp).Weight = xlThick
                .Borders(xlDiagonalUp).ColorIndex = xlAutomatic
            
End With
        
End If
     
    
End If
    
Set RaBereich = Nothing
    
' ActiveSheet.Protect
End Sub
ransi 

     Code eingefügt mit Syntaxhighlighter 3.0


Bild

Betrifft: AW: Steuerelement einsetzen
von: Werner

Geschrieben am: 31.03.2005 18:54:48
Hallo Ransi, klappt wunderbar, ich maile Dir ein Bierchen rüber.
nochmals danke für deine mühe.
Gruss Werner
 Bild
Excel-Beispiele zum Thema "Steuerelement einsetzen"
In einem MultiPage-Steuerelement blättern Aus einem Kalender-Steuerelement Datum und Zeit auswählen
Über UserForm-RefEdit-Steuerelement Bereich auswählen Einlesen von Arbeitsmappen in ein TreeView-Steuerelement
Blatt ohne Code, Steuerelement und Formeln speichern Abspielen einer AVI-Datei in einem UserForm-Steuerelement
UserForm mit Kalendersteuerelement immer mit aktuellem Datum Steuerelemente aus Tabellenblatt löschen
Steuerelementwechsel bei Eingaben Kalendersteuerelement an Tabellenblattwerte binden