Il problema è come fare per avere in un formulario una serie di pulsanti collegati a macro con dei valori di testo prestabiliti, in cui alla pressione di un tasto viene inserito il valore corrispondente nel campo di testo dove c'è il cursore del mouse. Chiaramente questa operazione deve essere possibile farla su diversi campi testo presenti nel formulario.
Allego un file di esempio.
Grazie!
Sul forum americano sono riuscito a trovare la macro giusta per il mio caso, chiaramente nel codice c'è da fare la sostituzione del testo da inserire con quello desiderato.
Allego per tutti il codice macro.
Codice: Seleziona tutto
Global nCursor As Long
Global sTextBox As String
Global oText As Object
Sub SingleLine_TextBox_StoreCursor (oEvent As Object) 'Text Box > Events > When Losing Focus
sTextBox = oEvent.Source.Model.Name
oText = oEvent.Source.AccessibleContext
nCursor = oText.CaretPosition
End Sub
Sub SingleLine_TextBox_Insert_Text1 (oEvent As Object) 'Button > Events > Execute
oText.insertText(("Hello World"),nCursor)
oForm = oEvent.Source.Model.Parent
oForm.GetByName(sTextBox).commit()
IF oForm.isnew THEN oForm.insertRow() ELSE oForm.updateRow()
End Sub
Sub SingleLine_TextBox_Insert_Text2 (oEvent As Object) 'Button > Events > Execute
oText.insertText(("Goodbye"),nCursor)
oForm = oEvent.Source.Model.Parent
oForm.GetByName(sTextBox).commit()
IF oForm.isnew THEN oForm.insertRow() ELSE oForm.updateRow()
End Sub