Uso de comodines

Amigo, otra consulta más bajo el mismo código que hemos estado viendo, y gracias por dedicarle tiempo ya que aún no soy muy bueno en esto de la programación. Me podrías ayudar en el uso de los comodines para realizar búsquedas, es en el siguiente código, ya que cuando realiza la búsqueda tiene que ser con los mismos datos; por ejemplo: si quiero buscar todos los equipos con series %CQJH2M1%, ya que a veces hay caracteres antes y después de la serie.
Supongo que ha de ser por la función Ucase, pero he intentado anexarle comodines pero no me los acepta. ¿Me podrías indicar cómo le hago para usar comodines para la búsqueda en este código y en que parte del cógio los escribiría?
Nuevamente, muchísimas gracias. Anexo el código que estoy usando.
Private Sub BUSQUEDA_Click()
Dim ultima_fila As Long
Dim ultima_columna As Long
Dim fila As Long
Dim columna As Long
Dim fila1 As Long
Dim columna1 As Long
Dim buscar As String
Dim cadena As String
Dim encontro As Boolean
encontro = False
'Digita dato a buscar
    buscar = Application.InputBox("No. De Serie para realizar reporte:", "Parametro   Requerido", "")
If buscar <> "" Then
'Crea hoja de reporte
    Dim nombreHoja As String
    nombreHoja = InputBox("Escriba un nombre para generar el reporte:")
    If nombreHoja = "" Then Exit Sub
    Dim hoja As Worksheet
    Set hoja = ActiveWorkbook.Sheets.Add
    hoja.Name = nombreHoja
    ActiveSheet.Move after:=Worksheets(Worksheets.Count)
 Sheets("2010").Range("A1:AV2").Copy Destination:=Sheets(hoja.Name).Range("A1")
'Busqueda de dato
    buscar = UCase(buscar)
    ultima_fila = Worksheets("2010").Cells.SpecialCells(xlCellTypeLastCell).Row
    ultima_columna = Worksheets("2010").Cells.SpecialCells(xlCellTypeLastCell).Column
    fila3 = 3
    For fila = 3 To ultima_fila
        columna1 = 1
        If Worksheets("2010").Cells(fila, 15) = buscar Then
            For columna = 1 To ultima_columna
                Worksheets(hoja.Name).Cells(fila3, columna1) = Worksheets("2010").Cells(fila, columna)
                columna1 = columna1 + 1
            Next columna
            fila3 = fila3 + 1
        End If
    Next fila
End If
MsgBox ("NO HAY REGISTROS. FIN DE REPORTE. FAVOR DE ELIMINAR REPORTE")
End Sub

1 respuesta

Respuesta
1
Para usar comodines osea caracteres que quieras anteponer o dejar al final de una variable debes conocer la tabla de caracteres
Chr(65) ' Devuelve A.
Chr(97) ' Devuelve a.
Chr(62)    ' Devuelve >.
Chr(37) ' Devuelve %.
Y utilizas & 'ampersand para unir una cadena de caracteres ejemplo
Sub ejemplo()
buscar = "cqjh2m1"
buscar = UCase(Chr(37) & buscar & Chr(37))
MsgBox buscar
End Sub
UCase solamente transforma de minúsculas a mayúsculas
Gracias, pero creo que no me expliqué bien, lo que necesito que realice es la forma de usar comodines en donde busca la serie, es decir que cuando me pregunte la serie a buscar le de QJH2M1, mes pueda desplegar todas las series que contengan ese dato y que pueden ser 1QJH2M1, 3QJH2M1, 7QJH2M1, etc. He intentado poner en la instrucción en donde busca como:
buscar=Ucase("*" & buscar") ó "*"buscar, así como como con el signo de ? pero no me funciona.
Ya sería lo último que te preguntara al respecto. Muchas gracias de antemano.
Ok, mira te indico que en Visual esos comodines no se llevan tal cual al entorno excel, por eso las fórmulas no quedan tal cual uno las escribe en la hoja de excel, visual las traduce al código y por eso los caracteres que vas a incluir no te los reconoce. Prueba con las instrucciones que te copie...

Añade tu respuesta

Haz clic para o