Tengo una macro que se ejecuta con 3 archivos fuentes, quiero agregar mas archivos fuentes

Tengo una macro que lo que hace es buscar información en una serie de archivos fuentes y jala los datos de dichos archivos fuentes a un formulario de Excel.

Lo que quiero es que la macro se expanda y se puedan agregar archivos fuentes. ¿Cómo se hace eso?

1 respuesta

Respuesta
1

H o l a:

Puedes poner la macro o enviarme tu archivo o archivos con los que trabajas.

ya pude con esto, muchísimas gracias, pero tengo otra pregunta.

Hice a partir de botones de opción una lista desplegable. Ahora lo que quiero es si selecciono algo de dicha lista, me traiga datos de otra hoja. 

me podrías ayudar?

GRACIAS!!!

Envíame tu archivo y me explicas con un ejemplo lo que necesitas.

Te anexo las macros

Sub OpcionSopa()
'Por.Dante Amor
    filtro
End Sub
Sub OpcionCarne()
'Por.Dante Amor
    filtro
End Sub
'
Sub OpcionCombo()
'Por.Dante Amor
    filtro
End Sub
Sub filtro()
'Por.Dante Amor
    Set h1 = Sheets("Hoja1")
    u = h1.Range("C" & Rows.Count).End(xlUp).Row
    If u < 24 Then u = 24
    h1.Range("C24:I" & u).ClearContents
    If h1.[D3] = "" Then Exit Sub
    If h1.[D4] = "" Then Exit Sub
    If h1.[D5] = "" Then Exit Sub
    Select Case h1.[D3]
        Case 1
            hoja = "sopa " & [D5]
        Case 2
            celdas = [D4]
            Set rango = Range(celdas)
            hoja = rango.Cells([D5], 1)
    End Select
    existe = False
    For i = 2 To Sheets.Count
        If UCase(Sheets(i).Name) = UCase(hoja) Then
            existe = True
            Exit For
        End If
    Next
    If existe Then
        j = 24
        Set h2 = Sheets(hoja)
        For i = 6 To h2.Range("A" & Rows.Count).End(xlUp).Row
            h1.Cells(j, "C") = h2.Cells(i, "B")
            h1.Cells(j, "D") = h2.Cells(i, "D")
            h1.Cells(j, "E") = h2.Cells(i, "E")
            h1.Cells(j, "F") = h2.Cells(i, "F")
            h1.Cells(j, "G") = h2.Cells(i, "G")
            j = j + 1
        Next
    Else
        MsgBox "Hoja no existe"
    End If
End Sub

sal u dos

hola, estoy cambiando los nombres de las hojas y agregando mas archivos fuentes, cambie varias cosas pero en el renglon 

Set h2 = Sheets(hoja)

me marca error... no puedo encontrar el porque, me puedes ayudar?

GRACIAS!!!

Todas las hojas para sopa, tienen que empezar con la palabra "sopa " y un espacio y luego el número, si no llevas esa nomenclatura es probable que ese sea el error.

y si lo cambio por puros números? modifico esta linea?

 hoja = "sopa " & [D5

Sí cambia esta:

hoja = "sopa " & [D5]

Por esta:

hoja = [D5]

sal u dos

sigue marcandome el error en el mismo renglón. 

Case 2
celdas = [D4]
Set rango = Range(celdas)
hoja = rango.Cells([D5], 1)
End Select
existe = False
For i = 2 To Sheets.Count
If UCase(Sheets(i).Name) = UCase(hoja) Then
existe = True
Exit For
End If
Next
If existe Then
j = 21
Set h2 = Sheets(hoja) (AQUI LO MARCA)
For i = 6 To h2.Range("A" & Rows.Count).End(xlUp).Row
h1.Cells(j, "C") = h2.Cells(i, "B")
h1.Cells(j, "D") = h2.Cells(i, "D")
h1.Cells(j, "E") = h2.Cells(i, "E")
h1.Cells(j, "F") = h2.Cells(i, "F")
h1.Cells(j, "G") = h2.Cells(i, "G")
j = j + 1
Next
Else
MsgBox "Hoja no existe"
End If
End Sub

Crea una nueva pregunta y me envías tu archivo para ver cómo estás nombrando las hojas

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas