ich versuche mich mal gut auszudrücken zu mein Problem.
Leider kann ich meine Excel nicht hochladen da sie trotz verpacken noch bei 308KB liegt und nur 300KB erlaubt sind.
Aber zu mein Problem:
Ich sitze an einer Arbeitseinteilung, diese soll durch Doppelklick in die Zelle ein Formular öffnen mit einer ListBox die gefüllt wird per ComboBox (funktioniert alles super).
Doch nun mein Problem, ich möchte gerne das meine Formatierung aus der Tabelle Projekte auch die Formatierung in der ListBox (spätestens jedoch in der Tabelle Arbeitseinteilung) übernimmt (Füll- und Textfarbe).
Option Explicit
Private Sub labProjekt_Click()
End Sub
Private Sub UserForm_Initialize()
With Me.cboUnternehmen
.AddItem Sheets("Projekte").Range("B4")
.AddItem Sheets("Projekte").Range("H4")
.AddItem Sheets("Projekte").Range("N4")
.Style = fmStyleDropDownList
End With
End Sub
Private Sub cboUnternehmen_Change()
Dim i As Integer
Dim Farbe As Integer
Me.lstProjekt.Clear
i = 5
If Sheets("Projekte").Cells(4, 2).Value = cboUnternehmen.Text Then
While Worksheets("Projekte").Cells(i, 1).Value Me.lstProjekt.Value
Wend
With Me.lstProjekt _
'ListBox füllen
.ColumnCount = 2 _
'Anzahl der Spalten (Spaltenbreite gleich groß)
Do _
'Fußgesteuerte Schleife, Abbruchkriterium s.u.
.AddItem
.List(.ListCount - 1, 0) = Worksheets("Projekte").Cells(i, 2).Value
.List(.ListCount - 1, 1) = Worksheets("Projekte").Cells(i, 3).Value
i = i + 1
Loop While Worksheets("Projekte").Cells(i, 1).Value = "" And _
Worksheets("Projekte").Cells(i, 2).Value "" _
'Abbruchkriterium
End With
End If
If Sheets("Projekte").Cells(4, 8).Value = cboUnternehmen.Text Then
While Worksheets("Projekte").Cells(i, 1).Value Me.lstProjekt.Value
Wend
With Me.lstProjekt
.ColumnCount = 2
Do
.AddItem
.List(.ListCount - 1, 0) = Worksheets("Projekte").Cells(i, 8).Value
.List(.ListCount - 1, 1) = Worksheets("Projekte").Cells(i, 9).Value
i = i + 1
Loop While Worksheets("Projekte").Cells(i, 7).Value = "" And _
Worksheets("Projekte").Cells(i, 8).Value ""
End With
End If
If Sheets("Projekte").Cells(4, 14).Value = cboUnternehmen.Text Then
While Worksheets("Projekte").Cells(i, 1).Value Me.lstProjekt.Value
Wend
With Me.lstProjekt
.ColumnCount = 1
Do
.AddItem
.List(.ListCount - 1, 0) = Worksheets("Projekte").Cells(i, 14).Value
i = i + 1
Loop While Worksheets("Projekte").Cells(i, 13).Value = "" And _
Worksheets("Projekte").Cells(i, 14).Value ""
End With
End If
End Sub
Private Sub lstProjekt_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
With lstProjekt
ActiveCell = .List(.ListIndex, 0) & " " & .List(.ListIndex, 1)
End With
Unload frmProjektliste
End Sub
Dies ist mein Formular was die Werte aus einer Tabelle ausliest und am Ende aus zwei Spalten zu einer zusammenführt!
Ist hier mit der ListBox überhaupt möglich die Formatierung bzw. spätestens durch die Auswahl in der Arbeitseinteilung zu übernehmen?
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim rngZelle As Range
For Each rngZelle In ActiveSheet.Range("D7:D1101, F7:F1101, H7:H1101, J7:J1101, L7:L1101, _
N7:N1101, P7:P1101, R7:R1101, T7:T1101, V7:V1101, X7:X1101, Z7:Z1101, AB7:AB1101, AD7:AD1101, AF7:AF1101, AH7:AH1101, AJ7:AJ1101, AL7:AL1101, AN7:AN1101, AP7:AP1101, AQ7:AZ1101")
If rngZelle.Address = Target.Address Then
Cancel = True
Exit Sub
End If
Next rngZelle
If Target.Address = ActiveCell.Address Then
frmProjektliste.Show
End If
End Sub
Der Teil aus der Tabelle Arbeitseinteilung wo der Doppelklick passiert und dann auch dort die Auswahl aus der ListBox eingefügt wird. (leider ohne die Formatierung aus der Tabelle Projekte).
Ich benötige jedoch nur ein Code Schnipsel oder ein Hinweis zur Lösung.
Wie gesagt ist meine Excel >300KB und kann sie daher nicht hoch laden, tut mir leid.
Ich hoffe mir kann einer helfen, kann ggf. auch die Excel per Mail schicken.
Wenn es mit der ListBox gar nicht gehen sollte, wie käme ich dann zu mein Ziel?