Condividi:        

[excel] macro x maiuscola iniziale

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

[excel] macro x maiuscola iniziale

Postdi marcoc » 18/04/08 10:23

ciao a tutti,
alla creazione di ogni nuovo foglio, vorrei che cliccando un pulsante personalizzato, si formattasse in modo che, qualsiasi cosa scrivo avesse la prima lettera maiuscola; ad esempio, se digito "numero", all'enter, mi ridà "Numero"; se scrivo "numero ordine", mi ridà "Numero ordine" (maiuscola solo la prima lettera della prima parola).
mi sapete dire che devo scrivere nel Visual Basic per avere una macro del genere?

altrimenti, sarebbe possibile che selezionando le celle che mi servono e cliccando il pulsante personalizzato, mi convertisse in maiuscolo la prima lettera della prima parola di ogni cella? (in pratica, che le celle a cui applicare la macro varino di volta in volta in base alla selezione che faccio col mouse+tasto ctrl)
Avatar utente
marcoc
Utente Senior
 
Post: 318
Iscritto il: 22/03/07 21:58
Località: Nerviano

Sponsor
 

Re: [excel] macro x maiuscola iniziale

Postdi Dylan666 » 18/04/08 13:29

http://www.ozgrid.com/VBA/change-case-text.htm
Ora come ora però quello script se selezioni una sola cella fa la conversione su tutto il foglio ma basta togliere il primo blocco "if ..End If" e lasciare solo "Set rAcells = Selection"
Avatar utente
Dylan666
Moderatore
 
Post: 39994
Iscritto il: 18/11/03 16:46

Re: [excel] macro x maiuscola iniziale

Postdi Anthony47 » 19/04/08 22:22

..oppure questa macro nostrana:
Codice: Seleziona tutto
Sub Up1only()
For Each Cella In Selection
If Len(Cella.Value) > 0 Then Cella.Value = UCase(Left(Cella.Value, 1)) & Right(Cella.Value, Len(Cella.Value) - 1)
Next Cella
End Sub

Come da richiesta mette solo la prima lettera in maiuscolo; lavora sulle celle selezionate.

Se vuoi fare in modo che quello che scrivi viene modificato automaticamente in tal modo, metterai l’ istruzione “IF LEN etc etc” in una macro di Worksheet_Change, e sostituirai “Cella” con “Target”; come in tutte le macro di evento, in testa Application.Enableevent=False e in coda Application.Enableevent=True

Se vuoi associare la macro a un pulsante sulla barra degli strumenti, crea il pulsante (tab Comandi, categoria Macro) nella barra che preferisci (o in una barra di strumenti “Personalizzata” che ti crei), poi doppioclick sul pulsante e ti sara’ chiesto a quale macro associarlo; qui ovviamente sceglierai Up1only.
La macro non consente “annulla”; se ti serve, puoi creare una macro che toglie la maiuscola iniziale usando lo stesso codice ad eccezione di “UCase(Left etc etc” che sostituirai con “lCase(Left etc etc”, che assocerai a un altro pulsante.

Ciao.
Avatar utente
Anthony47
Moderatore
 
Post: 19222
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "[excel] macro x maiuscola iniziale":


Chi c’è in linea

Visitano il forum: Nessuno e 39 ospiti