minimem | |
| 2007-05-28 03:22 - Respuestas: 11 - Tema nº: 2450463
Características: Windows 2000, AMD-K6(tm) 3D Processor,.
necesito crear una macro la cual mande a llamar archivos de excel los cuales contiene formatos, los archivos viven en la siguiente ruta c:/curso1/co-01-01/informe1.xls.
una vez que llama el formato el estudiante captura sus datos desde el teclado y al guardar el archivo lo mande a un directorio distinto por ejemplo curso2.
mil gracias.
| |
|
|
ebolo | |
|
Re: Como crear una macro Continuación (Solucionado) - 2007-05-28 09:56 - Respuesta 2
Hola minimen;
Vamos a ir por partes:
1) .... necesito crear una macro la cual mande a llamar archivos de excel ....
Para ésto podemos poner un Combobox en la hoja de excel y rellenarla con los nombres de los liobors de excel que contiene la ruta que pongas.
Te vas a la pestaña Ver - Barra de Herramientas - y activa Cuadro de Controles.
Clicka sobre el botón con una regla y un cartabón, de esta forma entras en modo diseño.
Si te pones sobre los botones te aparece el nombre de cada uno, selecciona el que te pone cuadro combinado y lo colocas en tu hoja de excel donde quieras.
Clicka otra vez sobre el botón con una regla y un cartabón, de esta forma saldrás del modo diseño.
Luego Herramientas - Macro - Editor de Visual Basic; te aparecerá una hoja en blanco, ahí le pones:
-
Private Sub Worksheet_Activate() 'Cuando se activa la hoja de excel
Dim nm As String
On Error Resume Next
Me.ComboBox1.Clear
nm = Dir$("C:\curso1\co-01-01\*.xls")
If Err = 0 Then
'Va a continuar mientras encuentre ficheros
Do While Len(nm)
'Se añade al combo
ComboBox1.AddItem nm
'Vamos al siguiente fichero
nm = Dir$
Loop
End If
Err = 0
End Sub
-
lo grabas y prueba pasando a otra hoja y volviendo a entrar a la hoja donde has colocado el cuadro combinado (combobox); se debe de haber rellenado el cuadro combinado con los ficheros de excel que halla en la ruta que hallamos puesto en Dir$(....).
2) ... los cuales contiene formatos ....
ésto no lo entiendo, ¿los formatos son datos que hay en las celdas? ó ¿quieres los formatos de texto,...de las celdas?.
3) ... captura sus datos desde el teclado ...
tampoco lo entiendo, ¿capturar datos es copiar y pegar o introducir los datos que aparecen o unos nuevos?.
4) ... al guardar el archivo lo mande a un directorio distinto por ejemplo curso2...
ésto no hay problema, para ello pondría un botón de comando y luego en el editor de Visual Basic colocar lo siguiente:
Private Sub CommandButton1_Click()
Workbooks.Application.ThisWorkbook.SaveAs "C:\curso2\co-01-01\loquequieras.xls"
End Sub
Saludos.
| |
|
|
ebolo | |
|
Re: Como crear una macro Continuación (Solucionado) - 2007-05-30 08:27 - Respuesta 3
Respuesta de minimen:
gracias por el apoyo
1.- te comento que ejecuto la macro y en la sentencia do while loop se queda corriendo y no le dá fín al código.
2.- no aparece el archivo en el combobox
3.- el formato ya está creado y el alumno sólo lo llena introduciendo los datos desde el teclado.
| |
|
|
ebolo | |
|
Re: Como crear una macro Continuación (Solucionado) - 2007-05-30 10:32 - Respuesta 4
Hola minimen, pégame en un post el código que has colocado.
No habras un post nuevo, seguimos en éste.
Saludos. | |
|
|
minimem | |
|
Re: Como crear una macro Continuación (Solucionado) - 2007-05-31 00:54 - Respuesta 5
hola! muchas gracias, como ves no se del tema. t mando lo que hice
Private Sub Worksheet_Activate()
Dim nm As String
Private Sub Worksheet_Activate()
Dim nm As String
On Error Resume Next
Me.ComboBox1.Clear
nm = Dir$("C:\Curso1\CO0101\Informe1.xls")
If Err = 0 Then
Do While Len(nm)
ComboBox1.AddItem nm
nm = Dir$("C:\Curso1\CO0101\Informe1.xls")
Loop
End If
Err = 0
gracias de nuevo por la atención. | |
|
|
|