Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
736to740
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
736to740
736to740
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Frage zum Code von Nepumuk

Frage zum Code von Nepumuk
25.02.2006 13:52:36
Nepumuk
Hallo,
ich habe hier einen von Nepumuk erstellten Code gefunden.
Dieser wäre für mich auch geeignet nur, ist es möglich diesen Code so
umzustellen das der Zelleninhalt von Spalte B, nur dann angezeigt wird
wenn in der Spalte i ein Wert in der dazugehörigen Zeile vorhanden ist?
Also wenn in z.b. B1 und I1 ein Wert vorhanden ist.

Private Sub UserForm_Activate()
Dim strArray() As String
Dim lngRow As Long, lngLastRow As Long
With Tabelle1
lngLastRow = .Cells(.Rows.Count, 2).End(xlUp).Row - 3
Redim strArray(1 To lngLastRow, 1 To 2)
For lngRow = 1 To lngLastRow
strArray(lngRow, 1) = .Cells(lngRow + 3, 2).Text
strArray(lngRow, 2) = .Cells(lngRow + 3, 9).Text
Next
End With
With ListBox1
.ColumnCount = 2
.ColumnWidths = CStr(Tabelle1.Columns(2).ColumnWidth * 6) & ";" & _
CStr(Tabelle1.Columns(9).ColumnWidth * 6) 'Multiplikator anpassen !!
.List = strArray
End With
End Sub

Danke u.Gruß
Petra

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Frage zum Code von Nepumuk
25.02.2006 15:02:28
Nepumuk
Hallo Petra,
z. B. so:

Private Sub UserForm_Activate()
Dim strArray() As String
Dim lngRow As Long, lngLastRow As Long
With Tabelle1
lngLastRow = .Cells(.Rows.Count, 2).End(xlUp).Row - 3
ReDim strArray(1 To lngLastRow, 1 To 2)
For lngRow = 1 To lngLastRow
If .Cells(lngRow + 3, 2).Text <> "" And _
.Cells(lngRow + 3, 9).Text <> "" Then
strArray(lngRow, 1) = .Cells(lngRow + 3, 2).Text
strArray(lngRow, 2) = .Cells(lngRow + 3, 9).Text
End If
Next
End With
With ListBox1
.ColumnCount = 2
.ColumnWidths = CStr(Tabelle1.Columns(2).ColumnWidth * 6) & ";" & _
CStr(Tabelle1.Columns(9).ColumnWidth * 6) 'Multiplikator anpassen !!
.List = strArray
End With
End Sub

Viele Grüße Peter
Eine kurze Nachricht, ob es läuft, wäre nett - danke.
Anzeige
AW: Frage zum Code von Nepumuk
25.02.2006 16:15:06
Nepumuk
Hallo Petra / Peter,
ohne Leerzeilen:
Private Sub UserForm_Activate()
    Dim strArray() As String
    Dim lngRow As Long, lngLastRow As Long
    Dim lngEmptyCells As Long, lngCounter As Long
    With Tabelle1
        lngLastRow = .Cells(.Rows.Count, 2).End(xlUp).Row - 3
        lngEmptyCells = WorksheetFunction.CountBlank(.Range( _
            .Cells(4, 9), .Cells(lngLastRow + 3, 9)))
        Redim strArray(1 To lngLastRow - lngEmptyCells, 1 To 2)
        For lngRow = 1 To lngLastRow
            If Trim$(.Cells(lngRow + 3, 9).Text) <> "" Then
                lngCounter = lngCounter + 1
                strArray(lngCounter, 1) = .Cells(lngRow + 3, 2).Text
                strArray(lngCounter, 2) = .Cells(lngRow + 3, 9).Text
            End If
        Next
    End With
    With ListBox1
        .ColumnCount = 2
        .ColumnWidths = CStr(Tabelle1.Columns(2).ColumnWidth * 6) & ";" & _
            CStr(Tabelle1.Columns(9).ColumnWidth * 6) 'Multiplikator anpassen !!
        .List = strArray
    End With
End Sub


Gruß
Nepumuk

Anzeige
AW: Danke euch beiden! Geht einwandfrei.
25.02.2006 16:38:55
Petra
.

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige