Microsoft Excel

Herbers Excel/VBA-Archiv

wenn zelle/ zeile aktiv dann combobox

Betrifft: wenn zelle/ zeile aktiv dann combobox von: Andy
Geschrieben am: 03.09.2004 17:32:55

Hallo!

Ich habe zum Wochenende mal eine knifflige Frage..
Ist es möglich, dass beim Aktivieren/ auswählen einer Zelle in Spalte B (oder beim Aktivieren einer ganzen Zeile) eine Combobox erscheint? In dieser Combobox soll eine Spalte (I,J,K oder L) ausgewählt werden und in entsprechender Spalte in aktiver zeile datum eingetragen werden.
Geht so etwas? wenn ja wie?

Gruß und eine schönes Wochenende
Andy

  


Betrifft: AW: wenn zelle/ zeile aktiv dann combobox von: k.Rola
Geschrieben am: 03.09.2004 19:46:56

Hallo,

ist zwar nicht genau das, was du willst, vielleicht kannst du es ja dennoch verwenden.

''-----------------------------------------------------------------------------------
Diesen Code in das Modul von "DieseArbeitsmappe":

Option Explicit
Private Sub Workbook_Activate()
Call Menu_make
End Sub


Private Sub Workbook_Deactivate()
Call Menu_delete
End Sub

''------------------------------------------------------------------------------
Diesen Code ins Modul der entsprechenden Tabelle:

Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.CommandBars(MNAME).Visible = Target.Column = 2 And Target.Count = 1
End Sub


''------------------------------------------------------------------------------

Diesen Code in ein Standardmodul:

Option Explicit
Public Const MNAME As String = "Datumspalte..."
Sub Menu_make()
Dim cb As Object, cbb As Object, i As Byte
Call Menu_delete
Set cb = CommandBars.Add(MNAME)
For i = 1 To 4
Set cbb = cb.Controls.Add(1)
With cbb
.Style = 2
.BeginGroup = True
.TooltipText = "Spalte wählen..."
.Caption = Chr(i + 72)
.Tag = i + 8
.OnAction = "Datum_Spalte"
.Width = 24
End With
Next
With cb
.Visible = False
.Position = 4
.Protection = 27
End With
End Sub
Sub Menu_delete()
On Error Resume Next
CommandBars(MNAME).Delete
End Sub
Sub Datum_Spalte()
Dim s As Integer
s = CommandBars.ActionControl.Tag
If ActiveCell.Column = 2 Then
Cells(ActiveCell.Row, s) = Date
End If
CommandBars(MNAME).Visible = False
End Sub

''--------------------------------------------------------------------------------

Gruß K.Rola


  


Betrifft: AW: wenn zelle/ zeile aktiv dann combobox von: Andy
Geschrieben am: 06.09.2004 09:04:12

Dankeschön.
ich werde es mal probieren.

Gruß
Andy


  


Betrifft: Super von: Andy
Geschrieben am: 06.09.2004 09:21:28

Super code..
es funktioniert einfach super.
Danke nochmal.

Andy


 

Beiträge aus den Excel-Beispielen zum Thema "wenn zelle/ zeile aktiv dann combobox"