Macro para buscar un dato en varias hojas
Publicado por Karla Vargas (1 intervención) el 16/12/2019 22:06:23
hola, espero puedan ayudarme.
Hice una macro para crear un indice con el nombre de cada hoja (NOMBRE), pero nececito que al lado del nombre aparesca un dato en especifico (ULTCALIFICACION)
Por lo que nececito que busque el ultimo dato de una de las celdas de la hoja correspondiente, es decir buscar en todas las hojas del libro, el nombre (columna A de la primer hoja) y me arroje el ultimo dato escrito de la columna F de la hoja que corresponde a esa persona.
soy muy nueva en esto, la verdad que busco y uso lo que me sirve de cada ejemplo, por lo que probablemente tenga muchos errores, y de esto la verdad no he podido encontrar la forma de solucionarlo, se lo que quiero que haga pero no logro llegar al resultado sin que me muestre error.
Si pudieran ayudarme se los agradeceria
El indice lo hice asi:
Hice una macro para crear un indice con el nombre de cada hoja (NOMBRE), pero nececito que al lado del nombre aparesca un dato en especifico (ULTCALIFICACION)
Por lo que nececito que busque el ultimo dato de una de las celdas de la hoja correspondiente, es decir buscar en todas las hojas del libro, el nombre (columna A de la primer hoja) y me arroje el ultimo dato escrito de la columna F de la hoja que corresponde a esa persona.
soy muy nueva en esto, la verdad que busco y uso lo que me sirve de cada ejemplo, por lo que probablemente tenga muchos errores, y de esto la verdad no he podido encontrar la forma de solucionarlo, se lo que quiero que haga pero no logro llegar al resultado sin que me muestre error.
Si pudieran ayudarme se los agradeceria
El indice lo hice asi:
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
Sub crearIndice()
Dim hoja As Worksheet
On Error Resume Next
Set hoja = Worksheets("NOMBRE")
On Error GoTo 0
If hoja Is Nothing Then
Worksheets.Add(Before:=Worksheets(1)).Name = "NOMBRE"
Else
Worksheets("NOMBRE").Cells.Clear
End If
Worksheets("NOMBRE").Range("A1").Value = "NOMBRE"
Dim fila As Long
Dim vinculoRegreso As String
fila = 2
vinculoRegreso = "M1"
For Each hoja In Worksheets
If hoja.Name <> "NOMBRE" Then
With Worksheets("CLIENTES")
.Hyperlinks.Add Anchor:=.Cells(fila, 1), _
Address:="", _
SubAddress:="'" & hoja.Name & "'!A1", _
TextToDisplay:=hoja.Name
End With
With hoja
.Hyperlinks.Add Anchor:=.Range(vinculoRegreso), _
Address:="", _
SubAddress:="NOMBRE!A1", _
TextToDisplay:="NOMBRE"
End With
fila = fila + 1
End If
Next
End Sub
Valora esta pregunta


0