Imprimir página | Cerrar ventana

Pasar datos de formulario access a Notepad

Impreso de: Foro de Access y VBA
Categoría: Access y VBA
Nombre del foro: Access y VBA
Descripción del foro: Foro de programacion en Access (Con código y sin código)
URL: http://www.mvp-access.com/foro/forum_posts.asp?TID=86521
Fecha de impresión: 26/Septiembre/2023 a las 23:32


Tema: Pasar datos de formulario access a Notepad
Publicado por: paloma
Asunto: Pasar datos de formulario access a Notepad
Fecha de publicación: 09/Noviembre/2022 a las 10:02
Hola

Quiero desde un formulario de access, abrir el notepad y pegar unos datos. Pero no quiero hacer un copy-paste, sino recoger los datos en una variable y trasladarla a notepad. 

Lo que tengo es esto. ¿Pero cómo consigo trasladar los datos de la variable str al notepad?

Dim str As String
str = Me.Titulo & vbCrLf & Me.ID & vbCrLf & Me.Matricula & vbCrLf & Me.Concepto

Shell "notepad.exe", vbNormalFocus

Gracias,

Saludos,




Respuestas:
Publicado por: mounir
Fecha de publicación: 09/Noviembre/2022 a las 11:28
Hola!
Con SendKeys lo podrá hacer.

Dim str As String
str = Me.Titulo & vbCrLf & Me.ID & vbCrLf & Me.Matricula & vbCrLf & Me.Concepto

Shell "notepad.exe", vbNormalFocus
SendKeys str

-------------
Un Saludo.


Publicado por: paloma
Fecha de publicación: 09/Noviembre/2022 a las 12:01
¿¿Pero qué maravilla es esta?? No sabía que Sendkeys también permitiera enviar texto!!! Yo solo lo utilizaba para enviar teclas. Funciona de maravilla, mil gracias!!!!!!! :)

Ahora, si me lo permites, ¿sabrías decirme cómo hacer para que el texto no salga con doble Enter? Me sale con el formato que te pongo a continuación. Si yo le quito el vbCrLf a la variable, los datos de cada control de formulario que tomo, los pega en el Notepad juntos, pero si lo meto, me hace doble Enter,,, 

TITULO

ID

MATRICULA

CONCEPTO 


Gracias,

Saludos,


Publicado por: paloma
Fecha de publicación: 09/Noviembre/2022 a las 12:04

Por cierto, he tenido que cambiar la Shell porque de repente me daba error, antes no me daba y he puesto C:\WINDOWS delante para que funcione. No sé por qué, ¿sabes a qué es debido? 

Shell "C:\WINDOWS\NOTEPAD.EXE", vbNormalFocus


Publicado por: paloma
Fecha de publicación: 09/Noviembre/2022 a las 12:07

Lo encontré! Es:

str = Replace(str, Chr(10), "")

Solo, mounir, saber, por curiosidad, si pudieras decirme, por qué antes me funcionaba Shell "Notepad.exe" y después tuve que meter "C:\WINDOWS\NOTEPAD.EXE"

Gracias

Saludos


Publicado por: mounir
Fecha de publicación: 09/Noviembre/2022 a las 13:38
Hola!

Es obligatorio poner la ruta de cada programa para que se ejecvute correctamente.

https://learn.microsoft.com/es-es/office/vba/language/reference/user-interface-help/shell-function" rel="nofollow - https://learn.microsoft.com/es-es/office/vba/language/reference/user-interface-help/shell-function

-------------
Un Saludo.


Publicado por: paloma
Fecha de publicación: 09/Noviembre/2022 a las 17:50

ok!, gracias!

Saludos,


Publicado por: paloma
Fecha de publicación: 01/Abril/2023 a las 19:26
Por favor, pueden cerrar el hilo. El tema está resuelto



Imprimir página | Cerrar ventana