Foros del Web » Soporte técnico » Ofimática »

Busqueda, extracción e insercion entre 2 xls.

Estas en el tema de Busqueda, extracción e insercion entre 2 xls. en el foro de Ofimática en Foros del Web. Tengo algunas dudillas, en el codigo que posteo abajo... Soy Nuevo en este tipo de macros... la duda que tengo es que al correr este ...
  #1 (permalink)  
Antiguo 08/12/2010, 13:29
 
Fecha de Ingreso: diciembre-2010
Mensajes: 1
Antigüedad: 14 años
Puntos: 0
Busqueda, extracción e insercion entre 2 xls.

Tengo algunas dudillas, en el codigo que posteo abajo... Soy Nuevo en este tipo de macros... la duda que tengo es que al correr este programita pues se me cicla, y no me inserta datos en sus respectivas columnas... no se si me puedan apoyar
De antemano agradezco toda a la ayuda posible...

Private Sub CommandButton1_Click()
Dim ruta As String
Dim myRow As Integer
Dim MyFile As String
Dim MiRuta As String
Dim xls As New Excel.Application
Dim var1 As String
Dim var2 As String
Dim WS_Count As Integer
Dim I As Integer
Dim A As Integer
Dim B As String
Dim C As String
Dim D As String
Dim E As Integer
Dim F As String
Dim G As Integer
Dim J As Integer
Dim K As Integer
Dim L As String
Dim M As String
Dim N As String

'Valida que los datos de los combos sean correctos y sacamos la ruta donde estan los archivos segun los combos
If Me.Comboano.Text <> "" And Me.Combomes.Text <> "" Then
ruta = Application.ActiveWorkbook.Path + "\" + Me.Comboano.Text + "\" + Me.Combomes.Text '+ "\"
Else
MsgBox "Falta seleccionar el año o el mes que necesita", vbOKOnly, "Faltan datos"
End If

MiRuta = ruta
MyFile = Dir(MiRuta + "\*.xls")
Do Until MyFile = ""
Workbooks.Open (MiRuta + "\" + MyFile)
'xls.Visible = False
Sheets(1).Select
Sheets(1).Range("B1").Select
For A = 1 To Len(ActiveCell)
B = Mid(ActiveCell, A, 1)
If B <> " " Then
C = C & B
Else
Exit For
End If
Next
var1 = C
ActiveCell.Offset(1, 0).Select

For E = 1 To Len(ActiveCell)
F = Mid(ActiveCell, E, 1)
If F = ":" Then
J = J + 1
If J = 2 Then
E = E + 2
For K = E To Len(ActiveCell)
L = Mid(ActiveCell, K, 1)
If L <> " " Then
L = L & M
E = K
var2 = M
Else
Exit For
End If
Next
End If
End If
Next
Workbooks(MyFile).Close
Workbooks("NuevasValidaciones_Auto").Worksheets(1) .Activate
WS_Count = ActiveWorkbook.Worksheets.Count
For I = 1 To WS_Count
If Me.Comboano.Text = ActiveWorkbook.Worksheets(I).Name Then
Sheets(I).Select
Sheets(I).Range("A11").Select
Exit For
End If
Next I

'existen espacios entre el var1 que quizas afecte pues al llegar a ellos faltara mas digitos en var1

Do While ActiveCell.Value = "fin"
If ActiveCell.Value = var1 Then
Select Case Me.Combomes.Text
Case "Enero"
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = var2
Case "Febrero"
ActiveCell.Offset(0, 2).Select
ActiveCell.Value = var2
Case "Marzo"
ActiveCell.Offset(0, 3).Select
ActiveCell.Value = var2
Case "Abril"
ActiveCell.Offset(0, 4).Select
ActiveCell.Value = var2
Case "Mayo"
ActiveCell.Offset(0, 5).Select
ActiveCell.Value = var2
Case "Junio"
ActiveCell.Offset(0, 6).Select
ActiveCell.Value = var2
Case "Julio"
ActiveCell.Offset(0, 7).Select
ActiveCell.Value = var2
Case "Agosto"
ActiveCell.Offset(0, 8).Select
ActiveCell.Value = var2
Case "Septiembre"
ActiveCell.Offset(0, 9).Select
ActiveCell.Value = var2
Case "Octubre"
ActiveCell.Offset(0, 10).Select
ActiveCell.Value = var2
Case "Noviembre"
ActiveCell.Offset(0, 11).Select
ActiveCell.Value = var2
Case "Diciembre"
ActiveCell.Offset(0, 12).Select
ActiveCell.Value = var2
End Select
Else
ActiveCell.Offset(1, 0).Select
End If

If ActiveCell.Value = "Total" Then
Selection.EntireRow.Insert
ActiveCell.Value = var1
Select Case Me.Combomes.Text
Case "Enero"
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = var2
Case "Febrero"
ActiveCell.Offset(0, 2).Select
ActiveCell.Value = var2
Case "Marzo"
ActiveCell.Offset(0, 3).Select
ActiveCell.Value = var2
Case "Abril"
ActiveCell.Offset(0, 4).Select
ActiveCell.Value = var2
Case "Mayo"
ActiveCell.Offset(0, 5).Select
ActiveCell.Value = var2
Case "Junio"
ActiveCell.Offset(0, 6).Select
ActiveCell.Value = var2
Case "Julio"
ActiveCell.Offset(0, 7).Select
ActiveCell.Value = var2
Case "Agosto"
ActiveCell.Offset(0, 8).Select
ActiveCell.Value = var2
Case "Septiembre"
ActiveCell.Offset(0, 9).Select
ActiveCell.Value = var2
Case "Octubre"
ActiveCell.Offset(0, 10).Select
ActiveCell.Value = var2
Case "Noviembre"
ActiveCell.Offset(0, 11).Select
ActiveCell.Value = var2
Case "Diciembre"
ActiveCell.Offset(0, 12).Select
ActiveCell.Value = var2
End Select
Exit Do
End If
Loop
Loop

End Sub

Etiquetas: extracción, xls, busquedas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:01.