Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

Application.InputBox

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

Application.InputBox

Postdi nicola_na78 » 19/04/13 08:04

Ciao Amici, chiedo ancora una volta il Vostro preziosissimo aiuto....

vorrei creare una macro utilizzando un Application.InputBox che fa la seguente cosa:
mi trovo nella colonna D, la cella selezionata e deve essere memorizzata, si apre l'Application.InputBox mi chiede le celle da selezionare, seleziono es da b4:b8 e riporto nelle celle selezionate lo stesso valore della cella memorizzata....

Grazie
nicola_na78
Utente Senior
 
Post: 147
Iscritto il: 11/06/10 15:26

Sponsor
 

Re: Application.InputBox

Postdi maxmula » 19/04/13 10:26

nicola_na78 ha scritto:Ciao Amici, chiedo ancora una volta il Vostro preziosissimo aiuto....

vorrei creare una macro utilizzando un Application.InputBox che fa la seguente cosa:
mi trovo nella colonna D, la cella selezionata e deve essere memorizzata, si apre l'Application.InputBox mi chiede le celle da selezionare, seleziono es da b4:b8 e riporto nelle celle selezionate lo stesso valore della cella memorizzata....

Grazie



Non credo tu possa farlo con la InputBox, perchè viene visualizzata come form di tipo Modal (non ti lascia, cioè, interagire con altri oggetti che non siano sè stessa).

Per fare ciò che chiedi, potresti "simular" la InputBox con un form appositamente realizzato, che conterrà una TextBox, una Label che chiede di selezionare le celle ed un pulsante da cliccare ad operazione terminata (Caption = "Avanti", ad esempio).

Il click sul pulsante è in realtà solo una scusa per riportare il cursore nel form; quando il cursore rientra, viene generato un evento MouseMove sul form stesso, che conterrà questo codice:

Codice: Seleziona tutto
     Dim Selez as String
     Selez = Selection.Address   
     If TextBox1.Text <> Selez Then TextBox1.Text = Selez



Come evento Click sul pulsante, invece, andrai a mettere il codice che copia l'indirizzo selezionato (TextBox1.Text) alla destinazione voluta, ed il classico Me.Hide che nasconde il form.

Questo in linea di massima.
Spero di esserti stato d'aiuto,
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Re: Application.InputBox

Postdi Anthony47 » 19/04/13 11:32

Humm, Max si e' distratto...
Infatti e' possibile usare type:=8 per ritornare "Un riferimento di cella, ad esempio un oggetto Range".
Il codice per quanto richiesto potrebbe quindi essere
Codice: Seleziona tutto
Set mycell = Application.InputBox( _
    prompt:="Select a cell", Type:=8)
mycell.Value = ActiveCell.Value
(derivato dall' esempio in help on line)

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13899
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Application.InputBox

Postdi maxmula » 19/04/13 13:44

Anthony47 ha scritto:Humm, Max si e' distratto...


La distrazione è il mio stato normale!
Diciamo che il mio stile di programmazione è un po' "Cowboy"... :)

Ciao,
MAx
Avatar utente
maxmula
Utente Senior
 
Post: 965
Iscritto il: 18/08/04 18:28
Località: N44°59'45 E09°00'34

Re: Application.InputBox

Postdi nicola_na78 » 19/04/13 13:48

Grazie Antony47 è perfetta... grazie anche a te max
Saluti a tutti
nicola_na78
Utente Senior
 
Post: 147
Iscritto il: 11/06/10 15:26


Torna a Applicazioni Office Windows


Topic correlati a "Application.InputBox":


Chi c’è in linea

Visitano il forum: Nessuno e 5 ospiti