Cuestión : Ayuda de VBA

Hola, el

I usar el código atado para filtrar 2 listboxes adentro sobresale.  Trabajó para mí antes, pero ahora, no filtrará y no exhibirá los resultados en la hoja de trabajo del “análisis”.  Exhibirá solamente el grupo de datos completo.  ¿Qué modificaciones necesito hacer de modo que el código filtre mi grupo de datos?
class= > " claro " del
> del " codeSnippet " del class= del
class= " lineNumbers " del
class= del
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
>Private notpretty CommandButton3_Click secundarios " del class= " del id= " codeSnippet763134 del
 1 entonces ws2.UsedRange.Clear
ws1. [A1: AX1]. Destinación de la copia: =ws2. [A16]

Fijar el rng = ws1.Range (ws1. [A17], ws1.Cells (ws1.Rows.Count, “A”). Extremo (xlUp))

Para cada cel en rng
  Si UCase (sList1) = "" o InStr (sList1, “|” y cel. Valor y “|") <> 0 entonces
     Si UCase (sList2) = "" o InStr (sList2, “|” y cel. Compensación (0, 1).Value y “|") <> 0 entonces
  cel. Volver a clasificar según el tamaño (1, 50). Destinación de la copia: =ws2.Cells (ws2.Rows.Count, “A”). Extremo (xlUp). Compensación (1)
     Terminar si
  Terminar si
Cel siguiente

Descargarme

Application.ScreenUpdating = verdad

Submarino del extremo

Submarino privado CommandButton4_Click ()
Descargarme
Terminar el submarino

Submarino privado UserForm1_Initialize ()
ListBox1.Selected (0) = verdad
ListBox2.Selected (0) = verdad

Submarino del extremo
class= del

Respuesta : Ayuda de VBA

Pienso que su código está copiando todas las filas debido a la estructura del th del “si” las cláusulas abajo:

Para cada cel en rng
  Si UCase (sList1) = "" o InStr (sList1, “|” y cel. Valor y “|") <> 0 entonces
     Si UCase (sList2) = "" o InStr (sList2, “|” y cel. Compensación (0, 1).Value y “|") <> 0 entonces
  cel. Volver a clasificar según el tamaño (1, 50). Destinación de la copia: =ws2.Cells (ws2.Rows.Count, “A”). Extremo (xlUp). Compensación (1)
     Terminar si
  Terminar si
Cel siguiente

En efecto el primer “si” selecciones la fila para copiar CUALQUIER si slist1 es en blanco, o si hay un fósforo. El segundo “si” hace iguales para slist2.

Mi conjetura es debajo de lo que usted pensó era algo como el código:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
Para cada cel en rng
  'si slist1 es en blanco, el cheque slist2:
  Si UCase (sList1) = "" entonces
     Si InStr (sList2, “|” y cel. Compensación (0, 1).Value y “|") <> 0 entonces
     cel. Volver a clasificar según el tamaño (1, 50). Destinación de la copia: =ws2.Cells (ws2.Rows.Count, “A”). Extremo (xlUp). Compensación (1)
     terminar si
  
  'si slist1 no es comprobación para en blanco fósforo en slist1
     si InStr (sList1, “|” y cel. Valor y “|") <> 0 entonces
     cel. Volver a clasificar según el tamaño (1, 50). Destinación de la copia: =ws2.Cells (ws2.Rows.Count, “A”). Extremo (xlUp). Compensación (1)
     terminar si
terminar si

Cel siguiente
Otras soluciones  
 
programming4us programming4us