Formattare Colonne di Excel

mercoledì 20 luglio 2005 - 18.57

LeonDom Profilo | Senior Member

Ciao a tutti,
devo esportare dati in un foglio excel... il problema è che vorrei (almeno per il momento) formattare tutte le colonne come string... ci sono altri modi oltre alla mappatura delle colonne con un datatable???
Es:
Dim dColInt As New DataColumn
With dColInt
.DataType = System.Type.GetType("System.String")
.ColumnName = "ColInt"
.ReadOnly = True
End With
tResultsTable.Columns.Add(dColInt)

QUando esporto i dati se ho dei campi numerici tipo 0019811 mi diventano 19811... vorrei controllarli in maniera diversa...

Grazie a tutti

Cteniza Profilo | Guru

Se quando scrivi il tuo formato vuoi i numeri formattati tutti con un certo numero di interi puoi usare uno degli overload di ToString che appunto permette di indicare il formato.
La sintassi per i numeri è uguale al Format di vb6 (metti tanti zeri quante cifre vuoi nel numero)


LeonDom Profilo | Senior Member

Grazie... ma anche con la mappatura e la creazione di una datatable dove gli imposto tutte le colonne come System.String, quando vado a scrivere sul foglio excel mi formatta un campo che definisco come stringa come numerico e non riesco a capire il perché

LeonDom

Cteniza Profilo | Guru

Come fai ad esportare i dati verso excel?
- scrivi excel direttamente
- scrivi un file di testo che importi su excel
- scrivi un file excel tramite un comando sql

Eventualmente prova ad impostare il tipo celle della colonna di excel come testo


LeonDom Profilo | Senior Member

Creo una datatable a cui imposto le colonne come string (fin qui va tutto bene)
do in pasto ad una funzione che crea il file excel la mia datatable e scorro tutte le rows creando il file excel in questo modo...

le colonne string della datatable contengono fino qui i dati come sono realmente.... poiu qualcosa cambia nel passaggio alle celle del foglio excel che creo in questo modo...

sheNew.Range("A" & (i + 1)).Value = dtRow("IDType")
sheNew.Range("A" & (i + 1)).AutoFormat()
sheNew.Range("B" & (i + 1)).Value = dtRow("Nome")
sheNew.Range("B" & (i + 1)).AutoFormat()

Qui credo succeda qualcosa, perché quando apro il file excel li formatta come vuole....

Esiste un modo per formattare una cella da codice come Testo????
ad esempio sheNew.Range("A" & (i + 1)). ???? punto.qualcosa che me la formatti come testo.... anziché come numerico?



LeonDom

Cteniza Profilo | Guru

Prova a impostare i parametri:

Columns("A:A").Select
Selection.NumberFormat = "@"


LeonDom Profilo | Senior Member

Grandeeeeeeeeee Grazieeeeeeeeeeeeeeee

Sai dove posso trovare i vari tipi di dati per NumberFormat ????

Grazie 1000

LeonDom

BrandonHeat Profilo | Junior Member

Ciao raga!!!
Il mio problema è che nn riesco a formattare una singola cella da codice..
Usando il seguente metodo per riempire la cella:
XL.Workbooks(1).Worksheets(1).Cells(riga2, 1) = rsX.Fields("Soggetto")
come cavolo faccio a fargliela formattare in questo caso in modo testo?
E se per si trattasse di un numero?
Vi prego di rispondere per favore,ne ho urgente bisogno!
Grazie in anticipio!
Ciao!

Brandon Heat

LeonDom Profilo | Senior Member

hai provato con .NumberFormat = "@"

Io avevo risolto in questo modo...




LeonDom

BrandonHeat Profilo | Junior Member

Si ti ringrazio,ho visto oggi il tuo post xkè ieri ero concentrato a trovare il metodo..
Ci sono riuscito proprio come hai detto tu con la numberformat..
Se ti interessa per formattarla in modo da avere un numero devi fare:
.NumberFormat="0"
Grazie infinite x la tua risp..
Ciao ciao!!

Brandon Heat

bacval68 Profilo | Newbie

CIAO
SONO NUOVO E HO VISTO CHE HAI GIA' RISPOSTO AD UN COLLEGA CHE TI CHIEDEVA COME RISOLVERE IL PROBLEMA DELLA FORMATTAZIONE CELLE.
IO HO LO STESSO PROBLEMA MA NON SO COSA SIA E COME USARE QUESTI DATI: Columns("A:A").Select
Selection.NumberFormat = "@"

POTRESTI PER CORTESIA SPIEGARMI DOVE DEVO ANDARE PER USARE QUESTI DATI????'

TI RINGRAZIO IN ANTICIPO, E SPERO UN GIORNO DI POTER RICAMBIARE.

VALERIO
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5