Access - Insertar texto donde esté el cursor

   
Vista:

Insertar texto donde esté el cursor

Publicado por Eduard (11 intervenciones) el 14/08/2014 16:14:59
Buenas tardes,

Si quiero introducir un texto y el cursor está al final del texto, tengo este código, pero si el cursor no está en el final, quisiera insertarlo en el punto donde estar el cursor, alguien me puede ayudar?

1
2
3
4
5
6
7
8
9
10
11
12
Private Sub Patològics_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
    If Me.Patològics.SelStart = Len(Me.Patològics) Then
        Forms.Filiació.Antecedents.Form.Refresh
        [Patològics] = [Patològics] & vbCrLf & "¤" & "  "
        Me.Patològics.SelStart = Len(Me.Patològics)
        KeyAscii = 8
    Else:
        KeyAscii = 13
    End If
End If
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
información
Otras secciones de LWP con contenido de Access
- Código fuente de Access
- Cursos de Access
- Temas de Access
- Chat de Access
información
Códigos de Access
- Contar días
- Calculo del IBAN
- MsgBox Temporizados

Insertar texto donde esté el cursor

Publicado por jose (741 intervenciones) el 15/08/2014 12:07:20
SALUDOS EDUARDO



CON LA INSTRUCCION insertas los caracteres a partir de esa psosicion y te mantiene los caracteres de la derecha

Me.Patològics.SelStart = N


si lo que quieres es que se borre lo de la derecha despues del punto de arrarnque y continuar escribiendo
Me.Patològics.SelStart = N
Me.Patològics.SelStart = Len(Me.Patològics) - Me.Patològics.SelStart
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Insertar texto donde esté el cursor

Publicado por Eduard (11 intervenciones) el 16/08/2014 19:40:45
He intentado mil formas de insertar esto y no funciona... vbCrLf & "¤" & " "

He provado sin suerte:

1/ [Patològics] = vbCrLf & "¤" & " "

2/ Me.Patològics.SelStart = Len(Me.Patològics)

Me podéis ayudar? Gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Neckkito

Insertar texto donde esté el cursor

Publicado por Neckkito (1104 intervenciones) el 18/08/2014 22:18:50
Hola Eduard:

Vamos a ver... no sé cómo lo debes tener configurado pero he sido incapaz de recrear el comportamiento que describes en tu mensaje.

Con el evento en el que estás actuando, y utilizando el ENTER, lo que consigo es que la posición del cursor se coloque automáticamente en 0. Sí me inserta el salto de línea y el carácter al final del texto, pero lo que me importa, que es la información de saber dónde está situado el cursor, se pierde.

Con el evento "Al bajar una tecla" la situación del cursor no se pierde, aunque utilices el ENTER. Sin embargo, tras la inserción no hay manera de que el cursor se sitúe en un punto en concreto. El resultado es que inserta donde tienes el cursor pero después te selecciona todo el texto del campo. Y de ahí no salgo.

Sí se puede conseguir teniendo un botón de comando que, al hacer click, te haga lo siguiente:
...
me.nombrecampo.setfocus
me.nombrecampo.selstart=len(me.nombrecampo) 'Te sitúa el cursor al final del texto del campo.
...

Pero la situación del cursor ya se ha perdido (de nuevo).

Ya no sé qué más puedo intentar... salvo que a alguien se le ocurra alguna idea brillante que nos saque de dudas.

Todo lo que te acabo de comentar lo puedes ver en este ejemplo: https://www.mediafire.com/?vl28e55k2w7x2iu

Saludos,

Neckkito
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Insertar texto donde esté el cursor

Publicado por eduard (11 intervenciones) el 31/08/2014 21:03:45
Hola Neckkito,

He abierto tu ejemplo y me dá:

"Error de compilación, no se puede encontrar el proyecto o la biblioteca"

Me subraya "Left", en el editor de visual basic

Por si sirve de algo, uso access 2003

Un saludo y mil gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Neckkito

Insertar texto donde esté el cursor

Publicado por Neckkito (1104 intervenciones) el 31/08/2014 21:25:32
Hola!

Acabo de probar el ejemplo (en un Access 2010) y a mí me funciona correctamente.

Lo cierto es que no sé por qué te da ese error. El left es una función básica de VBA.

Revisa las referencias, a ver si hay alguna que te suene "rara", o que te ponga "falta". Compacta y repara la BD.

Si lo anterior no funciona créate una BD nueva y en un módulo estardar escribe este código:

...
Sub test()
Const miTest as string="Test de left"
msgbox left(miTest,4)
End sub
...

Con el cursor dentro del procedimiento pulsa F5. Si te devuelve un msgbox con "Test" el problema estará en la BD de ejemplo bajo tu Access 2003. Intenta acoplar la sistemática a una copia de tu BD, "pasando" de intentar hacer funcionar el ejemplo.

Si aún así no te funciona pues... la verdad, no sé por qué te pasa eso.

Saludos,

Neckkito
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Insertar texto donde esté el cursor

Publicado por eduard (11 intervenciones) el 01/09/2014 02:27:03
Solucionado, en el editor de visual basic, herramientas, referencias, quité la referencia que marcava FALTA, microsoft office 15.

Funciona perfectamente, GRACIAS!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Insertar texto donde esté el cursor

Publicado por eduard (11 intervenciones) el 04/09/2014 19:46:08
Hola Neckkito,

Con esta instrucción al final de la instrucción, posiciona el cursor en el sitio indicado.

txtDatos.SelStart = miCursor + 4

1000 gràcies!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar