16- Búsqueda (FIND) en Excel con VBA

  Рет қаралды 4,802

Elsa Matilde

Elsa Matilde

Күн бұрын

Пікірлер: 24
@Antonio8688
@Antonio8688 6 жыл бұрын
Qué grato es haber encontrado tu canal. Había perdido tu pista. Gracias por tus enseñanzas.
@ElsaMatilde
@ElsaMatilde 6 жыл бұрын
Gracias Antonio por tus comentarios. Saludos cordiales.
@ElCanalDeNito
@ElCanalDeNito 3 жыл бұрын
Hola Elsa, si me ha gustado mucho. Muy buenos lo ejemplos. Ya le he dejado mi 👍. Un cordial saludo.
@gamalielsierraaltauria5950
@gamalielsierraaltauria5950 6 жыл бұрын
Gracias Elsa Matilde, tus enseñanzas son valiosas.
@ElsaMatilde
@ElsaMatilde 6 жыл бұрын
Gracias Gamaliel. Me motivas a continuar con esta tarea... ya se viene el próximo video. Saludos cordiales!
@vicodca2
@vicodca2 4 жыл бұрын
que buen video, tenés un suscriptor nuevo, enseñas muy bien y muchas gracias por compartir
@josemariacorderoherrera640
@josemariacorderoherrera640 4 ай бұрын
Gracias por compartir doña Elsa. En el caso que el rango de búsqueda tenga un filtro el método find no logra encontrar los valores ocultados por el filtro. ¿Que sugiere en esos casos?
@ElsaMatilde
@ElsaMatilde 4 ай бұрын
Hola. Una opción sería quitar el filtro, hacer la búsqueda y volver a colocar el filtro. Dejo un pequeño ejemplo: Sub busca_con_filtro() 'dato a buscar en la col C dato = "mayo" 'se quitan posibles filtros If ActiveSheet.FilterMode = True Then ActiveSheet.ShowAllData On Error GoTo noEncontrado Range("C:C").Find(what:=dato, LookIn:=xlValues, lookat:=xlWhole).Activate 'si encuentra el dato guarda la ubicación en una variable o mensaje MsgBox ubica 'opcional 'vuelve a colocar el filtro que tenía ActiveSheet.Range("$A$4:$D$26").AutoFilter Field:=1, Criteria1:="" & "COBRANZAS" Exit Sub noEncontrado: MsgBox "No se encontró el texto " & dato & " en la col C" 'vuelve a colocar el filtro que tenía ActiveSheet.Range("$A$4:$D$26").AutoFilter Field:=1, Criteria1:="" & "COBRANZAS" End Sub Otra opción es recorrer el rango con un bucle del tipo For... Next donde se incluyan las celdas ocultas: Sub busca_con_ocultos() 'dato a buscar en la col C dato = "OCT" For i = 5 To Range("A" & Rows.Count).End(xlUp).Row If Range("C" & i) = dato Then MsgBox "Dato encontrado en fila " & i Exit For End If Next i End Sub
@josemariacorderoherrera640
@josemariacorderoherrera640 4 ай бұрын
@@ElsaMatilde muchísimas gracias por compartir su conocimiento. En mi caso prefiero la opción de quitar y poner los filtros para usar el Find dado que se trata de muchos registros a evaluar. Le saludo desde Costa Rica 🇨🇷.
@nicoromano2225
@nicoromano2225 3 жыл бұрын
Buen video 👌
@ShadowGG7
@ShadowGG7 2 жыл бұрын
Hola Elsa, muy bueno tu vídeo. // Quisiera aprovechar hacerte una consulta. Yo quiero usar el metodo (Find) para encontrar un valor en una columna, la cual dicha columna tendra en su mayoria valores cero (0). Supongamos: En la columna: H10:H20 hay valores que en su mayoria son Ceros (0) pero en la celda H15 hay un numero 77 y en la celda H19 hay un numero 14. Entonces quiero que por medio de FIND me encuentre el PRIMER valor DIFERENTE a cero de esa columna. Que en este ejemplo que te dí debería de devolver 77... Espero me haya dado a entender, y me puedas ayudar!
@ElsaMatilde
@ElsaMatilde 2 жыл бұрын
Con Find podrías encontrar los valores distintos a 0, con el argumento What:= "*" , si tienes activada la opción de 'ocultar ceros' como explico en el video N° 57 a partir del minuto 6:11. Sino tendrías que utilizar algún tipo de bucle como este: Sub buscaPrimerValor() 'ajustar col y rango total For i = 10 To 20 If Range("H" & i) 0 Then resulta = Range("H" & i): Exit For Next i 'opcional: indicar en qué fila se encontró la celda y su valor. MsgBox "El primer valor es " & resulta & " y se encuentra en la fila " & i End Sub
@ShadowGG7
@ShadowGG7 2 жыл бұрын
@@ElsaMatilde Gracias, para lo que ocupaba me sirvió el ciclo FOR que me mostraste. Ya que NO podía ocultar los valores cero, siempre debían de ser reflejados en la tabla por eso lo del video N° 57 no me funciona. Saludos!
@vicodca2
@vicodca2 3 жыл бұрын
como obtengo solo la fila o solo la columna de un texto buscado?
@ElsaMatilde
@ElsaMatilde 3 жыл бұрын
En el minuto 13:24 del video podrás observar la macro completa con la información de los posibles resultados: busco.Row y busco.Column (fila y columna del texto encontrado). Address sería para la referencia completa. Sdos!
@vicodca2
@vicodca2 3 жыл бұрын
@@ElsaMatilde exacto, ya lo aclaré y entendí, muchas gracias por compartir tus conocimientos, no tenés idea de lo mucho que me ayudás (cada video tuyo lo veo como 10 veces) gracias y saludos desde bolivia
@juancarlosvelez8458
@juancarlosvelez8458 5 жыл бұрын
Hola Elsa muy buenos los vídeos, costo mucho en ubicarte. Por favor necesitaría saber como adjuntar mi archivo para lograr modificar mi Macro VB La Macro Busca datos y lo Pega en otra Hoja Necesitaría modificar la macro "Resumen" ya que la misma pasa la información desde la hoja "Facturas" a la "Resumen". Lo que pretendo de ser factible que al pasar la información a la hoja "Resumen" al no tener el importe del servicio que coloque la fecha del mismo. Yo lo realice manualmente, pero al sumar los importe, la fecha ( que es una cifra ) también la totaliza. Quisiera lograr con la macro que: Primero: Pasar la fecha Segundo: que a totalizar ignore la fecha y sume lo que es importe solamente. Sub resumen() Dim uFo&, uFd& Dim servO As New Collection Dim celO As Range, servD As Range, servN As Range, mes As Range Dim item Dim primer$, servicio$ uFo = Range("C" & Rows.Count).End(xlUp).Row 'última fila con datos 'Llenamos la colección con los servicios sin repetidos For Each celO In Range("C5:C" & uFo) On Error Resume Next servO.Add celO, CStr(celO) Next celO 'Trabajamos sobre la hoja3 With Sheets("Resumen") uc = .Cells(1, Columns.Count).End(xlToLeft).Column 'Última columna con datos uFd = .Range("A" & Rows.Count).End(xlUp).Row + 1 'Última fila con datos .Range(.Cells(3, "A"), .Cells(uFd, uc)).ClearContents 'Limpiamos los datos anteriores 'Pasamos la colección de los servicios i = 3 For Each item In servO .Cells(i, "A") = item i = i + 1 Next item 'Recorremos los servicios j = 3 Do While .Cells(j, "A") "" For Each celO In Range("C5:C" & uFo) 'Buscamos el servicio en la hoja facturas If Trim(celO) = Trim(.Cells(j, "A")) And celO.Offset(, -2) "" Then 'Si encontramos el servicio y está al lado del mes... Set mes = .Range(.Cells(1, 1), .Cells(1, uc)).Find(celO.Offset(, -2), lookat:=xlWhole) 'Buscamos el mes en la fila 1 de la hoja3 .Cells(j, mes.Column) = celO.Offset(0, 3) 'Pasamos el dato de importe de la hoja facturas ElseIf Trim(celO) = Trim(.Cells(j, "A")) And celO.Offset(, -2) = "" Then 'Si encontramos el servicio y esta entre los mmeses... Set mes = Sheets("Facturas").Range(Cells(celO.Row, 1), Cells(2, 1)).Find("*", after:=Range(celO.Offset(, -2).Address), searchdirection:=xlPrevious) 'Buscamos el mes, desde la columna A del servicio y hacia arriba Set mes = .Range(.Cells(1, 1), .Cells(1, uc)).Find(mes, lookat:=xlWhole) .Cells(j, mes.Column) = celO.Offset(0, 3) End If Next celO j = j + 1 'Seguimos recorriendo los servicios de la hoja3 Loop uFd = .Range("A" & Rows.Count).End(xlUp).Row + 1 'Ultima fila con datos For k = 2 To uc + 0 .Cells(uFd, k) = WorksheetFunction.Sum(.Range(.Cells(3, k), .Cells(uFd - 1, k))) Next k End With Sheets("Resumen").Select ultimafila End Sub
@ElsaMatilde
@ElsaMatilde 5 жыл бұрын
Te acabo de enviar un mail. Si no lo encontrás (habrás cambiado de correo ? ) escribime al gmail que aparece en la portada de mi sitio web. Sdos!
@armandobrito5022
@armandobrito5022 4 жыл бұрын
Elsa Excelente contenid como siempre, te que consultar por algo que no he podido realizar con una macro para eliminar caracteres especiales tipo blanco que existen en una columna del Sku, son espedificamente 5 valores que los destaque en color amarilo, aplique una macro pero no hace lo que requiero. Te dejo el enlace drive.google.com/file/d/1knTvnxE8Aj1CeDe-Uo75AXuzJV7olfO1/view?usp=sharing y ojala me puedas orientar.Gracias.
@ElsaMatilde
@ElsaMatilde 4 жыл бұрын
Hola. No es fácil atender consultas por este medio porque no se pueden mostrar imágenes o códigos. Dejala en el tablón Excel de todoexpertos y desde allí la seguiremos. En principio tu hoja no tiene caracteres especiales como el espacio (CHR(160)), quizás porque ya hiciste correr la macro. Aclarame porqué consideras que esas 5 celdas no están como las esperas... se ven igual al resto. Sdos!
@armandobrito5022
@armandobrito5022 4 жыл бұрын
@@ElsaMatilde debido que al momento de hacer un cruce con otra hoja esos 5 sku no me los reconoce. De todas maneras lo voy a plantear en el tablon de todoexpertos. Saludos
@ElsaMatilde
@ElsaMatilde 4 жыл бұрын
@@armandobrito5022 Es otro el motivo entonces. Porque le corrí un código para ver si tenían espacios extras y no los tiene. También podrás comprobarlo colocando en cualquier celda la función: =LARGO(celda) y verás que te da la cantidad justa de los caracteres mostrados. Quizás el problema lo tiene la otra hoja.
@armandobrito5022
@armandobrito5022 4 жыл бұрын
@@ElsaMatilde gracias elsa tenias razón era otro el asunto bastante simple cambiar el formato a General y ahí me reconoció el cruce. Se agradece tu colaboración. Saludos
15- ¿Cómo utilizar FORMULAS en VBA?
13:56
Elsa Matilde
Рет қаралды 354
Curso de macros. metodo find completo.
23:09
Cursos de Excel y Macros
Рет қаралды 6 М.
Sigma Kid Mistake #funny #sigma
00:17
CRAZY GREAPA
Рет қаралды 30 МЛН
The evil clown plays a prank on the angel
00:39
超人夫妇
Рет қаралды 53 МЛН
Tuna 🍣 ​⁠@patrickzeinali ​⁠@ChefRush
00:48
albert_cancook
Рет қаралды 148 МЛН
🤗 10 CURIOSIDADES SOBRE BACHIRA | BLUE LOCK
1:00
OTASHORTS
Рет қаралды 29 М.
curso de macros. metodo find ejemplos en excel
24:53
Cursos de Excel y Macros
Рет қаралды 3,6 М.
🔷 BuscarV con Macros (VBA) en Excel
10:27
Raúl Ayala - Excel
Рет қаралды 26 М.
Modo alternativo de Función BUSCARV con VBA | Excel 2016 #96
19:35
Curso Excel VBA Macros. Método Find para encontrar varias coincidencias.
15:00
PC STUDIO Computación
Рет қаралды 22 М.
014. Excel VBA FIND function Example (Not found, 1 match and multiple matches)
16:28
EXCEL WIZARD IN MINUTES
Рет қаралды 4,7 М.
Formulario de Búsqueda en Excel (MACROS VBA)
26:52
El Tío Tech
Рет қаралды 188 М.
Sigma Kid Mistake #funny #sigma
00:17
CRAZY GREAPA
Рет қаралды 30 МЛН