TODOPIC
Lenguajes de programación para PC => Visual Basic => Mensaje iniciado por: navaismo en 10 de Noviembre de 2006, 16:24:19
-
Hola amigos, Bueno esto es mas bien un off-topic de pics.
Mi duda es la siguiente tengo un programa que a una hoja de excel con muchos datos la filtra y genera un archivo tambien de excel pero con los datos individuales en diferentes libros. Funciona bien pero para hacerlo tengo que crear el nombre del archivo ya saben eso de entrecomillar la ruta y el nombre de donde se van a guardar.
Como son varios tengo que hacer esa rutina muchas veces y pense en usar 2 for anidados para que incremente los filtros y genere solito el nombre del archivo basado en los indices i, j. Pero no puedo o no se si se puede meter en la ruta donde se va a guardar el archivo los indices, como esto esta entrecomillado no reconoce la sintaxis.
No sabran de alguna forma mas sencilla.
-
Hola navaismo.
...Como son varios tengo que hacer esa rutina muchas veces y pense en usar 2 for anidados para que incremente los filtros y genere solito el nombre del archivo basado en los indices i, j. Pero no puedo o no se si se puede meter en la ruta donde se va a guardar el archivo los indices, como esto esta entrecomillado no reconoce la sintaxis...
No entendi bien cual es el problema.
Supongamos i= 23 j = 50
Deberías poder hacer por ejemplo:
objWorkbook.SaveAs ("C:\" & i & j & ".xls")
obteniendo: C:\2350.xls
otros ejemplos:
Path= "C:\"
objWorkbook.SaveAs (Path & i & j & ".xls")
obteniendo: C:\2350.xls
Path="C:\"
objWorkbook.SaveAs (Path & "_" & i & "_" & j & ".xls")
obteniendo: C:\_23_50.xls
Tal vez no entendi bien lo que quisiste expresar. Por favor indicame si estoy equivocado.
-
Hola BRUNOF gracias, dejame usar una expresion que aprendi aqui en el foro.
LA LECHE!!!! BRUNOF :D osea te rifas si exactamente es lo que queria, yo lo ponia entre corchetes y no me dejaba.
Gracias por la ayuda.
Voy a probarlo
-
Me alegro que haya sido lo que necesitabas.
:D
Saludos!
-
mas ayuda please.....
Hola Amigos pues quiero mediante un form actualizar datos de excel pero no tengo idea de como es el codigo, esto es lo que estoy usando pero es para columna por columna y quisiera que el form agregara una fila nueva con los datos correspondientes cada que se use el form, bueno aqui el codigo que uso
PD un Frankeinstein de la RED:
Private Sub Command1_Click()
Dim Msg
Dim oExcel As Object
Dim oBook As Object
Dim oSheet As Object
'Iniciar un nuevo libro en Excel
Set oExcel = CreateObject("Excel.Application";-)
Set oBook = oExcel.Workbooks.Add
oExcel.Visible = True
'Agregar datos a las celdas de la primera hoja de cálculo del nuevo libro
Set oSheet = oBook.Worksheets(1)
oSheet.Range("A1:j1";-) .Font.Bold = True
oSheet.Range("A1";-) .Value = "Fecha"
oSheet.Range("B1";-) .Value = "Piso:"
oSheet.Range("c1";-) .Value = "Folio:"
oSheet.Range("d1";-) .Value = "Enviado a:"
oSheet.Range("e1";-) .Value = "Atencion:"
oSheet.Range("f1";-) .Value = "Autorizado a:"
oSheet.Range("g1";-) .Value = "Compañia:"
oSheet.Range("h1";-) .Value = "Descripcion:"
oSheet.Range("i1";-) .Value = "Numero de Serie:"
oSheet.Range("j1";-) .Value = "Activo Fijo:"
oSheet.Range("A2";-) .Value = "" & Text2.Text
oSheet.Range("g2";-) .Value = "" & Text7.Text
'Guardar el libro y cerrar Excel
oBook.Worksheets(1).SaveAs "mes de " & m
oBook.SaveAs "C:\x1.xls"
oExcel.Quit
Set oBook = Nothing
Set oExcel = Nothing
Set oSheet = Nothing
On Error GoTo ErrorHandler
Printer.Copies = 2
Printer.CurrentX = 120
Printer.CurrentY = 350
PrintForm
Exit Sub
ErrorHandler:
Msg = "El Formulario no Puede Imprimirse."
MsgBox Msg
Resume Next
Text3.SetFocus
End Sub
-
Hola amigos pues ya casi esta solo que aun no logro que no me bote error a la hora de repetir otro form sin cerrar la ventana.
estoy usando la propiedad isempty pero cuando uso la linea de codogo de FINC dentro del for la segunda vueta me dice que esta fuera de rango. Y cuando uso el for ya preestablecido la segunda vuelta me bota un error con la propiedad cell...
Alguien tiene una idea de como evitar eso
'finC = Range("A65536").End(xlDown).Row
For i = 1 To 20
If IsEmpty(Cells(i, 1)) Then
Cells(i, 1).Formula = "" & Text2.Text
Cells(i, 2).Formula = "" & Text3.Text
Cells(i, 3).Formula = "" & Text4.Text
Cells(i, 4).Formula = "" & Text11.Text
Cells(i, 5).Formula = "" & Text12.Text
Cells(i, 6).Formula = "" & Text6.Text
Cells(i, 7).Formula = "" & Text7.Text
Cells(i, 8).Formula = "" & Text8.Text
Cells(i, 9).Formula = "" & Text9.Text
Cells(i, 10).Formula = "" & Text10.Text
Exit For
End If
Next i
ojala me puedan ayudar ya me duele la cabeza jiji de no encontrar porque sale ese error.
Saludos