Macro Excel para copiar el portapapeles en una variable

10/10/2006 - 23:28 por taller_inf | Informe spam
Hola, lo que equiero hacer seguro que es muy simple para quien sepa utilizar
las macros de excel pero se me esta haciendo dificil.

Quiero definir una variable a la que copiar el contenido del portapapeles.

Y despues asignar (pegar) el contenido de esta variable en el comentario de
una celda (idealmente la celda actual).

Lo que he hecho es:

Dim Texto As DataObject
Texto.GetFromClipboard
ActiveCell.AddComment Texto

pero me dice que la variable no esta definida¿?

He probado muchas cosas que salen en forums pero nada de nada, me podeis
echar una mano? Muchas gracias de antemano.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
10/10/2006 - 23:53 | Informe spam
hola, 'anonimo/a' !

Quiero definir una variable a la que copiar el contenido del portapapeles.
Y despues asignar (pegar) el contenido de esta variable en el comentario de una celda (idealmente la celda actual).
Lo que he hecho es:
Dim Texto As DataObject
Texto.GetFromClipboard
ActiveCell.AddComment Texto
pero me dice que la variable no esta definida?
He probado muchas cosas que salen en forums pero nada de nada [...]



dependiendo que que tipo de datos pudiera ser el contenido del portapapeles [de windows] en 'ese' momento... -?-
[parece que] estas omitiendo pasos 'intermedios' y variables del tipo 'apropiado' para pegar en un comentario de celda -?-

revisa la informacion con relacion al portapapeles de windows en:
Working With The Windows Clipboard
http://www.cpearson.com/excel/clipboar.htm

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#2 taller_inf
11/10/2006 - 00:38 | Informe spam
Hola Hector, muchisimas gracias por tu rapida respuesta.
Esa web es exactamente lo que necesito. Muy acertada!
No obstante he probado lo que indica introduciendolo en la macro que tengo
creada a tal efecto de la siguiente manera:

Dim MyDataObj As New DataObject
Sub Macro2()
'
' Macro2 Macro
' Macro grabada el 10/10/2006 por Info
'
' Acceso directo: CTRL+z
'
MyDataObj.GetFromClipboard
ActiveCell.AddComment = MyDataObj.GetText
End Sub

1.- Donde como se puede apreciar defino mi variable para almacenar
unicamente texto.
2.- Le paso el contenido del portapapeles.
3.- Asigno al comentario de la celda actual el valor del texto almacenado en
esa variable.

Pero no funciona.

Ya se que debe ser muy simple, ya que lo unico que quiero es poder colocar
el contenido textual del portapapeles en el comentario de una celda.

Que mala es la ignorancia.

Abusando de tu amabilidad, a ver si puedes darme alguna luz. Es que soy
nuevo en esto del VB y las macros..

Gracias!!!




"Héctor Miguel" wrote:

hola, 'anonimo/a' !

> Quiero definir una variable a la que copiar el contenido del portapapeles.
> Y despues asignar (pegar) el contenido de esta variable en el comentario de una celda (idealmente la celda actual).
> Lo que he hecho es:
> Dim Texto As DataObject
> Texto.GetFromClipboard
> ActiveCell.AddComment Texto
> pero me dice que la variable no esta definida?
> He probado muchas cosas que salen en forums pero nada de nada [...]

dependiendo que que tipo de datos pudiera ser el contenido del portapapeles [de windows] en 'ese' momento... -?-
[parece que] estas omitiendo pasos 'intermedios' y variables del tipo 'apropiado' para pegar en un comentario de celda -?-

revisa la informacion con relacion al portapapeles de windows en:
Working With The Windows Clipboard
http://www.cpearson.com/excel/clipboar.htm

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.



Respuesta Responder a este mensaje
#3 taller_inf
11/10/2006 - 00:43 | Informe spam
Hola Hector muchas gracias por tu rapida respuesta!
La web es absolutamente la indicada para este caso.
He puesto lo siguiente siguiendo sus indicaciones en la macro que tengo:

Dim MyDataObj As New DataObject
Sub Macro2()
' Macro2 Macro
' Macro grabada el 10/10/2006 por Info
' Acceso directo: CTRL+z
MyDataObj.GetFromClipboard
ActiveCell.AddComment = MyDataObj.GetText
End Sub

Donde:
1- Creo la variable para almacenar texto del portapapeles
2- Copio el texto del portapapeles en esa variable
3- Introduzco el contenido de la variable en el campo comentarios de la
celda actual.

Pero chico, no funciona. Soy nuevo en esto del VB y las macros. Abusando de
tu amabilidad a ver si pudieras darme algo de luz en esto. Muchisimas
gracias!!!




"Héctor Miguel" wrote:

hola, 'anonimo/a' !

> Quiero definir una variable a la que copiar el contenido del portapapeles.
> Y despues asignar (pegar) el contenido de esta variable en el comentario de una celda (idealmente la celda actual).
> Lo que he hecho es:
> Dim Texto As DataObject
> Texto.GetFromClipboard
> ActiveCell.AddComment Texto
> pero me dice que la variable no esta definida?
> He probado muchas cosas que salen en forums pero nada de nada [...]

dependiendo que que tipo de datos pudiera ser el contenido del portapapeles [de windows] en 'ese' momento... -?-
[parece que] estas omitiendo pasos 'intermedios' y variables del tipo 'apropiado' para pegar en un comentario de celda -?-

revisa la informacion con relacion al portapapeles de windows en:
Working With The Windows Clipboard
http://www.cpearson.com/excel/clipboar.htm

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.



Respuesta Responder a este mensaje
#4 taller_inf
11/10/2006 - 00:44 | Informe spam
Hola Hector muchas gracias por tu rapida respuesta!
La web es absolutamente la indicada para este caso.
He puesto lo siguiente siguiendo sus indicaciones en la macro que tengo:

Dim MyDataObj As New DataObject
Sub Macro2()
' Macro2 Macro
' Macro grabada el 10/10/2006 por Info
' Acceso directo: CTRL+z
MyDataObj.GetFromClipboard
ActiveCell.AddComment = MyDataObj.GetText
End Sub

Donde:
1- Creo la variable para almacenar texto del portapapeles
2- Copio el texto del portapapeles en esa variable
3- Introduzco el contenido de la variable en el campo comentarios de la
celda actual.

Pero chico, no funciona. Soy nuevo en esto del VB y las macros. Abusando de
tu amabilidad a ver si pudieras darme algo de luz en esto. Muchisimas
gracias!!!

"Héctor Miguel" wrote:

hola, 'anonimo/a' !

> Quiero definir una variable a la que copiar el contenido del portapapeles.
> Y despues asignar (pegar) el contenido de esta variable en el comentario de una celda (idealmente la celda actual).
> Lo que he hecho es:
> Dim Texto As DataObject
> Texto.GetFromClipboard
> ActiveCell.AddComment Texto
> pero me dice que la variable no esta definida?
> He probado muchas cosas que salen en forums pero nada de nada [...]

dependiendo que que tipo de datos pudiera ser el contenido del portapapeles [de windows] en 'ese' momento... -?-
[parece que] estas omitiendo pasos 'intermedios' y variables del tipo 'apropiado' para pegar en un comentario de celda -?-

revisa la informacion con relacion al portapapeles de windows en:
Working With The Windows Clipboard
http://www.cpearson.com/excel/clipboar.htm

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.



Respuesta Responder a este mensaje
#5 Héctor Miguel
11/10/2006 - 01:06 | Informe spam
hola, 'anonimo/a' !

-> si la celda activa no tiene un comentario [como se deduce del codigo que expones]...
establecer un texto 'inicial' para un comentario de celda... -> NO requiere del signo '='

-> prueba modificando la instruccion:
de: -> ActiveCell.AddComment = MyDataObj.GetText
a: -> ActiveCell.AddComment MyDataObj.GetText

saludos,
hector.

__ la consulta original __
La web es absolutamente la indicada para este caso.
He puesto lo siguiente siguiendo sus indicaciones en la macro que tengo:
Dim MyDataObj As New DataObject
Sub Macro2()
' Macro2 Macro
' Macro grabada el 10/10/2006 por Info
' Acceso directo: CTRL+z
MyDataObj.GetFromClipboard
ActiveCell.AddComment = MyDataObj.GetText
End Sub
Donde:
1- Creo la variable para almacenar texto del portapapeles
2- Copio el texto del portapapeles en esa variable
3- Introduzco el contenido de la variable en el campo comentarios de la celda actual.
Pero chico, no funciona. Soy nuevo en esto del VB y las macros a ver si pudieras darme algo de luz en esto...
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida