› Sviluppare funzionalita su Microsoft Office con VBA › scrivere da tastiera in una cella selezionata da vba senza doverci cliccare
-
AutoreArticoli
-
Buongiorno.
Vorrei scrivere da tastiera in una cella senza doverci cliccare,
avendola selezionata/attivata/*ata da codice vba.
Ho provato con .Select e .Activate, ma per scriverci devo cliccarla.
Grazie.
Gustavo.
veramente da workbook.open funziona
Private Sub Workbook_Open()
Sheets("Fattura").Activate
Sheets("Fattura").Range("A1").Selecte appena digito scrive.
ma da un command button lo stesso codice ha un effetto diverso
Private Sub cmdNumero_Click()
Sheets("Fattura").Activate
Sheets("Fattura").Range("C2").Selectcioè per scriverci devo cliccare la cella.
Buona giornata, @Gustavo Rinaldi.
A proposito di:... da un command button lo stesso codice ha un effetto diverso ...
Mi sembra che CommandButton funzioni correttamente; che cosa non ti torna?Buon Lavoro.
Giuseppe
anche con il codice nel command button
Private Sub cmdNumero_Click()
Sheets("Fattura").Activate
Sheets("Fattura").Range("C2").Selectvorrei poter scrivere da tastiera nella cella senza doverci cliccare
come mi succede se il codice è nel workbook.open
Private Sub Workbook_Open()
Sheets("Fattura").Activate
Sheets("Fattura").Range("A1").SelectGrazie GiuseppeMN.
Buona giornata, @Gustavo Rinaldi.
Fammi capire, hai risolto o preferisci ti alleghi il File con il qule ho condotto i miei test?Giuseppe
Non ho risolto.
Vedrei volentieri il tuo file.
Grazie.
Buon pomeriggio, @Gustavo Rinaldi;
vedi se il File in allegato può esserti utile.Quando aprirai il File molto probabilmente si genererà un errore questo è normale; ignora l'errore, salva il File nella tua Cartella di lavoro e riaprilo.
Giuseppe
Allegati:
You must be logged in to view attached files.Grazie Giuseppe.
Ho provato il tuo file e naturalmente funziona.
Il mio command button era in un userform e come ti dicevo
lo stesso codice non otteneva lo stesso effetto.
Rinaldo, sei tu che devi allegare il file di esempio, non chi ti vuole aiutare
Buona serata @gustavo-rinaldilibero-it;
consentimi un saluto a @patel.La prossima volta cerca di essere più preciso nella richiesta, un conto è gestire un ActiveX o un UserForm.
Nel tuo caso ti consiglio di provare con TextBox e non con CommandButton.Giuseppe
Buongiorno
GiuseppeMN si è offerto di allegare il suo file e io ho accettato. Ho fatto qualcosa che non va? Mi scuso.
Grazie ancora Giuseppe. Scusami. Hai perfettamente ragione per quanto riguarda la precisione. La prossima volta sarò meno ambiguo.
gustavo-rinaldilibero-it ha scritto:
Grazie Giuseppe.
Se hai una Userform attiva non puoi scrivere sul foglio , ti consiglio di mettere un TextBox1 in Userform e scrivere nella TextBox1 collegata alla cella dove devi scrivere
Ciao a tutti e scusate l'intromissione
Non esattamente.
Se la proprietà ShowModal della UserForm è False (cioè vbModeless) allora puoi scrivere sul Foglio
Ciao,
Mario
Buon pomeriggio a Tutti.
@marius44, in risposta #28800, scrive:
... Se la proprietà ShowModal della UserForm è False (cioè vbModeless) allora puoi scrivere sul Foglio ...
Perdonami Mario ma temo che non sia esattamente così.
Voglio dire, è vero che se la proprietà ShowModal della UserForm è definita False puoi interagire sui Fogli di lavoro ma prima di scrivere, con UserForm ancora attivo, devo selezionare "a manina" la Cella nella quale voglio scrivere anche se la Cella risulta già selezionata.Dico questo in quanto anch'io pensavo fosse sufficiente porre a False ShowModal da VBA ma, salvo una mia svista, per poter scrivere nella Cella selezionata devi necessariamente selezionarla nuovamente.
A disposizione.
Giuseppe
Buon pomeriggio a Tutti.
No Giuseppe purtoppo temo che abbia ragione Mario (vedi esempio file allegato)
Allegati:
You must be logged in to view attached files.Ho provato con il tuo File; effettivamente funziona.
Devo capire perchè con il File con il quale ho condotto i miei Test non funziona.
Grazie.
Giuseppe
Allegati:
You must be logged in to view attached files.Niente da fare, mi sembra che tutte le Proprietà siano settate allo stesso modo ma con il mio File continuo a dover selezionare manualmente la Cella di destinazione "A1".
L'unica differenza consiste nel fatto che nel mio File dichiaro il Foglio di lavoro sul quale agire:
Sheets("Fattura").Range("A1").Select
Anche togliendo la definizione del Foglio di lavoro continuo ad avere problemi; non demordo devo scoprire il motivo.
Giuseppe
Niente da fare, mi sembra che tutte le Proprietà siano settate allo stesso modo ma con il mio File continuo a dover selezionare manualmente la Cella di destinazione "A1".
Evidentemente sbagli qualcosa , anche nell'esempio che ti ho dato io c'è (Sheets("Fattura").Range("A1").Select)
Allegati:
You must be logged in to view attached files.Evidentemente sbagli qualcosa ...
Evidentemente si, ma no so cosa.
A chi riesce a capire cosa garantisco il mio "Mi piace" (Dai+1)
Giuseppe
Evidentemente sbagli qualcosa ...
Si ma l'ultimo File che ho allegato è il tuo a mè sembra che vada benissimo ho fatto una modifica
... l'ultimo File che ho allegato è il tuo a mè sembra che vada benissimo ho fatto una modifica
Quale modifica?
Grazie.
Buona serata.
... l'ultimo File che ho allegato è il tuo a mè sembra che vada benissimo ho fatto una modifica
Questa sotto
Private Sub TextBox1_Change()
Sheets("Fattura").Range("A1").Value = TextBox1.Value
End SubAl posto di questa
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
Sheets("Fattura").Range("A1").Value = TextBox1.Value
End SubIl mio problema è su CommandButton e non su TextBox.
Voglio dire TextBox1_BeforeUpdate funziona correttamente, quello che mi crea problemi è CommandButton1_Click che seleziona la Cella"A1" ma non mi consente di modificarne il Valore.
Grazie comunque.
Giuseppe
Il mio problema è su CommandButton e non su TextBox.
E' la stessa cosa non vedo nessun problema
Allegati:
You must be logged in to view attached files. -
AutoreArticoli