Textbox a celda

02/04/2006 - 03:45 por Ramon | Informe spam
Hola, amigos tengo una hoja de excel generada por otro programa donde los
valores de algunas columnas son textboxes.

Como puede hacer para que esos textboxes se me transformen en celdas
normales ?

Hay algun metodo automatico de hacerlo ?


Gracias

Preguntas similare

Leer las respuestas

#1 Ramon
02/04/2006 - 05:13 | Informe spam
Me refiero a que los datos de las celdas en vez de estar directamente
(plain) en las celdas estan colocados dentro de textboxes en cada celdas.


"Francisco GMAIL" escribió en el mensaje
news:
Podrias reformular la solicitud, no esta muy claro lo que deseas y el
origen
de los datos.
- tienes una hoja de excel generado por otra aplicacion, pero a que te
refieres cuando dices que algunas columnas tienes valores de textbox { a
que
te refieres con esto}




Respuesta Responder a este mensaje
#2 Francisco GMAIL
02/04/2006 - 05:14 | Informe spam
Podrias reformular la solicitud, no esta muy claro lo que deseas y el origen
de los datos.
- tienes una hoja de excel generado por otra aplicacion, pero a que te
refieres cuando dices que algunas columnas tienes valores de textbox { a que
te refieres con esto}
Respuesta Responder a este mensaje
#3 Francisco GMAIL
02/04/2006 - 06:13 | Informe spam
Podrias anexar un ejemplo de tu archivo?
Respuesta Responder a este mensaje
#4 KL
02/04/2006 - 18:40 | Informe spam
Hola Ramon,

Tiene muy mala pinta :-). A ver, prueba lo siguiente...

Con la hoja en cuestion abierta...
1) Haz clic-derecho sobre el pequeño logo de Excel a la izquierda del menu Archivo
2) Elige la opcion 'Ver Codigo' para abrir el editor VBA.
3) Una vez en el Editor VBA, ve al menu Insertar>Modulo...
4) En la ventana mas grande a la derecha pega el codigo que te pongo a continuacion:

'inicio codigo--
Sub Macro1()
Dim sp As Shape, i As Long, prev As Double
Application.ScreenUpdating = False
With Cells
.UnMerge
.EntireColumn.AutoFit
.EntireRow.AutoFit
End With
Columns(5).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
Shapes("Text Box 2").Delete
For Each sp In Me.Shapes
i = i + IIf(sp.Top - prev = 27, 2, 1)
Cells(i, "B") = sp.TextFrame.Characters.Text
prev = sp.Top
Next sp
Application.ScreenUpdating = True
End Sub
'final codigo--

5) Pulsa Alt+F11 para volver a la hoja.
6) Pulsa Alt+F8 para que aparezca el dialogo Macro
7) Haz doble clic sobre el macro "Macro1"

El codigo pondra los valores en la columna [B] preservando los 'textboxes' en el area de la columna [A] para poder comprobar si se han copiado correctamente.

?Comentas si te ha funcionado?

Saludos,
KL



"Ramon" wrote in message news:
Claro. Anexo un ejemplo en el archivo adjunto.

Para explicar mejor lo que quiero es que todas las celdas de la columna "A"
tengan el valor directamente en la celda, es decir que uno le pueda dar a F2
o escribir directamente en ella y se puedan modificar directamente como
celdas normales y no via un textbox.

Gracias.

"Francisco GMAIL" escribi en el mensaje
news:
Podrias anexar un ejemplo de tu archivo?








Respuesta Responder a este mensaje
#5 Ramon
03/04/2006 - 02:13 | Informe spam
Muchisimas gracias por tu tiempo y por la idea. Ya la aplicaré para lo que
deseo.

Saludos



"KL" escribió en el mensaje
news:%
Hola Ramon,

Tiene muy mala pinta :-). A ver, prueba lo siguiente...

Con la hoja en cuestion abierta...
1) Haz clic-derecho sobre el pequeño logo de Excel a la izquierda del menu
Archivo
2) Elige la opcion 'Ver Codigo' para abrir el editor VBA.
3) Una vez en el Editor VBA, ve al menu Insertar>Modulo...
4) En la ventana mas grande a la derecha pega el codigo que te pongo a
continuacion:

'inicio codigo--
Sub Macro1()
Dim sp As Shape, i As Long, prev As Double
Application.ScreenUpdating = False
With Cells
.UnMerge
.EntireColumn.AutoFit
.EntireRow.AutoFit
End With
Columns(5).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
Shapes("Text Box 2").Delete
For Each sp In Me.Shapes
i = i + IIf(sp.Top - prev = 27, 2, 1)
Cells(i, "B") = sp.TextFrame.Characters.Text
prev = sp.Top
Next sp
Application.ScreenUpdating = True
End Sub
'final codigo--

5) Pulsa Alt+F11 para volver a la hoja.
6) Pulsa Alt+F8 para que aparezca el dialogo Macro
7) Haz doble clic sobre el macro "Macro1"

El codigo pondra los valores en la columna [B] preservando los 'textboxes'
en el area de la columna [A] para poder comprobar si se han copiado
correctamente.

?Comentas si te ha funcionado?

Saludos,
KL



"Ramon" wrote in message
news:
Claro. Anexo un ejemplo en el archivo adjunto.

Para explicar mejor lo que quiero es que todas las celdas de la columna
"A"
tengan el valor directamente en la celda, es decir que uno le pueda dar a
F2
o escribir directamente en ella y se puedan modificar directamente como
celdas normales y no via un textbox.

Gracias.

"Francisco GMAIL" escribi en el mensaje
news:
Podrias anexar un ejemplo de tu archivo?








email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida