簡體   English   中英

vb.net導出到excel更改單元格格式

[英]vb.net export to excel change cell format

我目前需要在從Web應用程序轉換的excel中以標准格式顯示數據。

需要顯示的數字格式:999.00

我用:

 CDbl(number).ToString("#,##0.00") 

在Web應用程序中顯示標准格式。 但是當我將其轉換為excel時,它會顯示:999(由於格式=通用)

我能做些什么來將單元格格式更改為Number?

我嘗試在兩者之間添加一個空格鍵來顯示2個小數點:

CDbl(number).ToString("#,##0. 00")

它顯示:999。00(但它也改為字符串而不是數字並對齊到左側,這不是一個好的顯示)

您似乎正在搜索Range.NumberFormat屬性。 此代碼段可以幫助您:

range.Cells(0,2).EntireColumn.NumberFormat = "@";

如需更多幫助,請查看此內容

NeverHopeless為您提供有關如何在VBA中使用宏來格式化Excel中的列的信息。 但是,我懷疑你是否希望excel用戶能夠使用空白的Excel文檔直接將新值直接輸入excel,或者有辦法從網站快速打開excel中的格式化值。 不幸的是,正如嘗試從csv文件格式加載值所證明的那樣,原始值不包含excel中所需的格式信息。

一種選擇是在網站上托管“導出”按鈕,以允許用戶從基於表格中的數據值並且具有擅長格式的格式動態創建的網站下載文件。 請務必使用能夠控制數字格式的文件格式,如xlsx,xls,xml,sylk,dif或除csv之外的其他內容,只有原始數值。

如果這是您想要的格式,您可以利用服務器端的Excel API來幫助創建Excel文件。 然后你可以控制着色,除了數字格式之外還有各種各樣的東西。

使用Excel Interop庫:

Dim style as Microsoft.Office.Interop.Excel.Style
style.NumberFormat = "#,##0.00"

參考范圍:

myRange.NumberFormat = "#,##0.00"

當前選擇也是一個范圍,因此如果您希望它與選擇一起使用,只需使用:

Selection.NumberFormat = "#,##0.00"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM