Formati celle

Storico discussioni

Il formato di una cella di Katia
Ciao ragazzi ho notato questo sito che e' molto interessante ed avrei bisogno di un aiutino da parte vostra per me che non ho molta dimestichezza con vba
ho generato una macro (descritta qui sotto) che mi serve cosi'i come e'
ossia rende una cella di excel in formato testo
inserisce un numero e poi rende la cella in formato numero
quando pero' poi vedo la cella il numero mi e' rimasto in formato testo e solo cliccandoci sopra si vede in formato numero
come posso fare per far si che si veda poi in formato numero?
p.s. lo so che la cella potrei subito settarla come numero ma ho bisogno che inizialmente sia in formato testo e poi in formato numero
 
RANGE ("A1").SELECT
Selection.NumberFormat = "@"
ActiveCell.FormulaR1C1 = "1000"
Selection.NumberFormat = "#,##"

Ciao ! di Apoben64
Per renderla di nuovo in formato numero come tu dici devi settarla , non ti basta questa operazione ? oppure puoi inserirla in un altra macro , forse nell'evento change del foglio.
facci comunque sapere !!!
 
Sub x()
Range("A1").Select
Selection.NumberFormat = "@"
ActiveCell.FormulaR1C1 = "1000"
Selection.NumberFormat = "#,##"
Selection.NumberFormat = "0"  ' riporta la cella in formato numero 
End Sub

di Katia
Caro apoben grazie per la risposta ma se tu provi ad utilizzara noterai che inizialmente rende la cella in testo, scrive 1000 nella cella
pi la rende unnumero ma solo nel momento in cui ci clicchi sopra viene riconosciuto il numero

di Big ronnie
Ciao katia,
vedi se questo codice ti va bene mettendolo nell'editor del foglio che ti interessa.ciao e fammi sapere.
 
Sub ConvertiNumero()
Dim A As Integer
Range("b1").NumberFormat = "@"
Range("b1") = "1000"
A = Range("b1")
Range("b1").NumberFormat = "#,##"
Range("b1") = A
End Sub

di Apoben64
Hai provato a usare anche la funzione =valore() ?
esempio se il valore lo hai solo in a1 , in b1 =valore(a1), dovrebbe funzionare.

di Katia
Vi ringrazio vanno bene tutte e due le informazioni
grazie

di Tommy
Solo per la cronaca, ma credo che la soluzione fosse molto pił vicina di quanto pensassimo
ho provato ad invertire le ultime 2 righe del codice iniziale e ... funziona! evidentemente la funzione numberformat agisce solo dopo aver inserito un nuovo valore nella cella;
 
Range("A1").Select
Selection.NumberFormat = "@"
Selection.NumberFormat = "#,##"
ActiveCell.FormulaR1C1 = "1000"

Cognolato Studio © 2005