Excel - error hlookup en do while

 
Vista:

error hlookup en do while

Publicado por DIEGO (2 intervenciones) el 06/03/2019 01:01:51
Buenas tardes

tengo una serie de columnas

1

estas hacen un lookup horizontal en la siguiente tabla

2

como se puede ver en la fila 3 aparece una nueva forma en la que se acomodan los campos de búsqueda por lo que esta tiene que tomarse como referencia para las filas 4 y 6. Lo mismo pasa para la fila 8 que tiene que usar a la 7 como referencia. el resultado final que pretendo es el siguiente:


3

para esto he hecho el siguiente código, aclaro que no soy programador y que seguramente hay cosas que se pueden mejorar

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
Sub LookUp()
 
Dim ran As Range
Dim w As String
Dim x As Integer
Dim y As Integer
Dim m As Integer
Dim r As Integer
 
Worksheets("1").Select
Range("A1").Select
Range(Selection, Selection.End(xlDown)).Select
y = Selection.count
x = 1
 
For x = 1 To y
    w = Left(Cells(x, 1), 1)
    If w = "/" Then
    Cells(x, 5).Value = "/"
    End If
Next x
 
For x = 1 To y
    Worksheets("1").Select
    w = Left(Cells(x, 1), 1)
    If w <> "/" Then
    Cells(x, 5).Select
    Range(Selection, Selection.End(xlUp)).Select
    m = Selection.count
    r = x - m + 1
    Set ran = Worksheets("1").Range(Cells(r, 1), Cells(x, 4))
    Worksheets("2").Select
        Dim n As Integer
        n = 1
        Do While Cells(1, n).Value <> ""
            Cells(x, n).Value = WorksheetFunction.HLookup(Cells(1, n).Value, ran, x, 0)
            n = n + 1
        Loop
    End If
Next x
 
End Sub

Al correrla me hace la búsqueda de la primera fila correctamente


4

Pero después me marca error 1004 tiempo de ejecusión, usando F8 encontré el problema en

Cells(x, n).Value = WorksheetFunction.HLookup(Cells(1, n).Value, ran, x, 0)

Espero alguien pueda ayudarme, saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 4.150
Plata
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

error hlookup en do while

Publicado por Antoni Masana (1459 intervenciones) el 06/03/2019 15:21:51
Para saber cual es el fallo lo mejor es debugar el código, eso quiere decir ejecutar el código paso a paso y ver que valores va tomando.
Y en especial que valores tienen:
n
Cells(1,n)
ran
x
Justo en el momento del error. Es imposible saber que esta pasando sin ver el libro.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar