leprechaun
Goto Top

Zelleninhalte an eine Listbox in einer UsrForm übergeben

Ich habe ein Makro geschrieben, welches mir in einer Vielspaltigen Exceltabelle eine Bedingung überprüft und wenn diese Bedingung erfüllt ist, soll die Zeile in eine Listbox übergeben werden.

Hallo,

Ich habe ein Makro geschrieben, welches eine Bedingung in einer Excel-Liste überprüft, wenn diese Bedingung wahr ist soll er mir die Zeile in einer ListBox in einem Formular übertragen, dieses aber nicht nur einfach, ich lasse eine Schleife durchlaufen und für jede Zeile, für die die Bedinung erfüllt ist, soll die Zeile oder noch besser bestimmte Zellen einer Zeile in diese Listbox untereinander aufgeführt werden.

Wie mache ich das? Die Prozedur ist NICHT in dem Formular in der Listbox hinterlegt, es ist eine Prozedur in einem Modul, welches ich starte, wenn ich auf den OK Button klicke in diesem Formular.

If DateDiff("d", Date, Cell) < 7 Then
MsgBox "Zeile" & Cell.Row & "; Spalte " & Cell.Column
Cell.Select
ActiveCell.EntireRow.Activate
MsgBox Cells(ActiveCell.Row, 10).Value & " " & Cells(ActiveCell.Row, 19).Value
UsrSDSReport.LstDokumente.AddItem (ActiveCell)
End If

So wie es da steht wird erstmal mein Formular für jeden Schleifenaufruf aufgerufen und es wird in der aktiven Zelle nur die erste an die Listbox übergeben.

Gruß,
Dirk

Content-Key: 177109

Url: https://administrator.de/contentid/177109

Printed on: April 20, 2024 at 15:04 o'clock

Mitglied: 83928
83928 Dec 01, 2011 at 12:52:27 (UTC)
Goto Top
Hi,

wie öffnest Du die Userform, vbModal oder vbModeless?
EDIT: Und wann und wo öffnest Du die Form?
Gruß abaaba
Member: Leprechaun
Leprechaun Dec 01, 2011 at 13:22:07 (UTC)
Goto Top
Ich starte das Makro, bzw. die Prozedur im Modul, diese ruft dann das Formular auf, dort klicke ich auf den Button ok und das Makro überprüft die Excelliste nach der Bedingung.

Da mir bis jetzt die vbModal und vbModeless unbekannt waren, ich somit nichts geändert habe am Standard und die Voreinstellung wohl vbModal ist, wird das Formular auch so gestartet. Um ehrlich zu sein, ich weiß nicht wo der Unterschied zwischen diesen beiden Punkten liegt.

Gruß,
Dirk