Hola os dejo un fragmento de código que encontré en nuestro foro y que he "tuneado" para mi aplicación. La cosa es que quiero rellenar mi listbox, pero no se hacerlo con varias condiciones. Me podría valer que hubiese dos condiciones (En curso y pendiente) o que la condición fuese distinta a la palabra de filtro (en este caso "Completado"). Os dejo el código y donde creo que puede estar la clave en negrita a ver si me podeis ayudar:
Dim hj As Worksheet
Dim c As Range, FirstCell As String
Dim busque
Dim filtro
Dim columna
Application.ScreenUpdating = False
filtro = "R1: R"
columna = "R"
busque = "Completado"
listbox_parte.Clear
With listbox_parte
.AddItem "Nº"
.Column(1, 0) = "IDENTIFICACIÓN"
.Column(2, 0) = "FECHA"
.Column(3, 0) = "LUGAR"
.Column(4, 0) = "CI/AI"
.Column(5, 0) = "ACCION NECESARIA"
.Column(6, 0) = "RESPONSABLE"
.Column(7, 0) = "ESTADO"
End With
With listbox_parte
.AddItem "--------------------------------------------"
.Column(1, 1) = "----------------------------------------------------------------------------------------"
.Column(2, 1) = "----------------------------------------------------------------------------------------"
.Column(3, 1) = "----------------------------------------------------------------------------------------"
.Column(4, 1) = "----------------------------------------------------------------------------------------"
.Column(5, 1) = "----------------------------------------------------------------------------------------"
.Column(6, 1) = "----------------------------------------------------------------------------------------"
.Column(7, 1) = "----------------"
End With
Set c = Sheets("PLAN_ACCIONES").Range(filtro & Sheets("PLAN_ACCIONES").Range(columna & Rows.Count).End(xlUp).Row).Find(What:=busque, LookIn:=xlValues, LookAt:=xlPart)
If c Is Nothing Then GoTo ProximaHoja
FirstCell = c.Address
Do
With listbox_parte
.ColumnCount = 8
.ColumnWidths = "20;120;80;150;40;360;180;130"
.AddItem listbox_parte.ListCount - 1
.Column(1, listbox_parte.ListCount - 1) = c.Offset(0, -17).Value
.Column(2, listbox_parte.ListCount - 1) = c.Offset(0, -16).Value
.Column(3, listbox_parte.ListCount - 1) = c.Offset(0, -12).Value
.Column(4, listbox_parte.ListCount - 1) = c.Offset(0, -11).Value
.Column(5, listbox_parte.ListCount - 1) = c.Offset(0, -9).Value
.Column(6, listbox_parte.ListCount - 1) = c.Offset(0, -4).Value
.Column(7, listbox_parte.ListCount - 1) = c.Value
End With
Set c = Sheets("PLAN_ACCIONES").Range(filtro & Sheets("PLAN_ACCIONES").Range(columna & Rows.Count).End(xlUp).Row).FindNext(c)
Loop Until FirstCell = c.Address
ProximaHoja:
Set hj = Nothing
Set c = Nothing
Application.ScreenUpdating = True



