Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
952to956
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
952to956
952to956
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Code-Problem

Code-Problem
21.02.2008 13:13:00
Frederic
Hallo Leute,
ich habe noch ein kleines Code-Problem, bis auf dieses laufen meine UF perfekt:
Ich habe den einen Teil vom Code. Dieser steuert eine ListBox (ListBox1) mit übereinstimmenden Suchkriterien (TextBox1) und zeigt diese an (Daten aus Sheet "Liste").
Soweit so gut.
Dann hatte ich das Problem, dass 3 Spalten in der ListBox Zahlen enthalten und ich diese formatieren wollte zwecks besserer Veranschaulichung.
Auch diesen habe ich dank Eurer Hilfe erfolgreich einbauen können.
Nun das Problem:
Wenn ich in meiner Textbox1 ein Suchkriterium eingebe, findet er zwar die Werte, aber die Formatierung greift hier nicht, da nicht in diesem Codeabschnitt enthalten.
Wie bringe ich beiden u.g. Codes miteinander zum Laufen?
Code1 (Steuert die Suchfunktion in der ListBox1 mit TextBox1):

Private Sub TextBox1_Change()
Sheets("Liste").Visible = True
Sheets("Liste").Select
Dim arr() As Variant
Dim Index As Integer
Dim iCount As Integer
Dim X As Long
X = Sheets("Liste").Cells(Rows.Count, "A").End(xlUp).Row
If TextBox1.Value = "" Then
ListBox1.RowSource = "A7:H" & X  'Bereich definieren
Exit Sub
End If
ListBox1.RowSource = ""
ListBox1.Clear
iCount = 0
For Index = 3 To X
If LCase(Left(Cells(Index, 2), Len(TextBox1))) = LCase(TextBox1) Then
If Sheets("Liste").Cells(Index, 2)  "" Then
On Error Resume Next
ReDim Preserve arr(7, iCount)
arr(0, iCount) = Cells(Index, 1).Value
arr(1, iCount) = Cells(Index, 2).Value
arr(2, iCount) = Cells(Index, 3).Value
arr(3, iCount) = Cells(Index, 4).Value
arr(4, iCount) = Cells(Index, 5).Value
arr(5, iCount) = Cells(Index, 6).Value
arr(6, iCount) = Cells(Index, 7).Value
arr(7, iCount) = Cells(Index, 8).Value
iCount = iCount + 1
ListBox1.Column = arr
End If
End If
Next
'Sheets("Liste").Visible = xlVeryHidden
End Sub


Code 2 (Dieser soll die Formatierung steuern, sprich Update bei jeglicher Eingabe eines Suchkriteriums):


Private Sub UserForm_Initialize()
Dim i
Dim vntArr
With Sheets("Liste")
vntArr = .Range(.Cells(7, 8), .Cells(65536, 1).End(xlUp))
End With
' Spalten im Array vor List formatieren (i, 3)=Spaltennummer
For i = 1 To UBound(vntArr)
vntArr(i, 3) = Format(vntArr(i, 3), "#,##0.00")  'Spalte C "Amount"
vntArr(i, 5) = Format(vntArr(i, 5), "#,##0.00")  'Spalte E "Net amount"
vntArr(i, 6) = Format(vntArr(i, 6), "#,##0.00")  'Spalte F "Tax amount"
Next i
With Me.ListBox1
.ColumnCount = UBound(vntArr, 2)
.List = vntArr
End With
End Sub


Vielleicht findet ihr eine Lösung, die beiden Codes zu "vereinen".
Gruß
Frederic

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

Betreff
Datum
Anwender
Anzeige
AW: Code-Problem
21.02.2008 16:25:44
fcs
Hallo Frederic,
enweder du verwendest die Text-Eigenschaft der Zellen beim Einlesen der Daten

arr(3, iCount) = Cells(Index, 4).Text

Dann wird der Zellinhalt so wie er in der Tabelle dargestellt (formatiert) wird ins Array geschrieben.
oder


arr(3, iCount) = Format(Cells(Index, 4).Value, "#,##0.00")


Gruß
Franz

AW: Code-Problem - DANKE SCHÖN!!!
21.02.2008 17:03:17
Frederic
Hallo Franz,
ultraeinfach, wenn manns weiss :-)
TAUSEND DANK!
War genau das, was ich gebraucht habe.
Frederic
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige