我正在創建一個表單,將數據輸入到我的Excel表單中。我一直遇到的問題是輸入的信息是一個數字,但是當爲表格「保存」按鈕運行VBA代碼時,我輸入到表格中的數據將作爲文本輸入到Excel工作表中。這會導致該行末尾的公式無法註冊數據(簡單的=sum(...)
公式)。我嘗試了幾個不同的選項,並且搜索瞭解決方案,但所有接近的答案都是從外部源導入數據。如何在使用表單輸入數據時將單元格的格式從文本轉換爲數字
這是將從表單接收數據的單個單元的代碼。會有更多,但我認爲這將提供足夠的信息。代碼中除了range("").select
發生更改以外,其他代碼都很少,然後在每個新選擇中從不同的文本框中提取數據。
Private Sub butSaveData_Click()
Sheet1.Activate
Range("g8").Select
ActiveCell.Value = txtAARs
Selection.NumberFormat = "0.00"
我認爲selection.numberformat
可以解決問題,但它仍然存在。我在Excel工作表中更改了格式,但是當表單填充單元格時,它會繼續將它們還原爲文本。
任何幫助或建議將不勝感激。我搜索了這個網站很多,找不到答案。我希望我不會錯過它。
你應該使用'隨着Sheet1.Range( 「G8」) 。價值= VAR1 .NumberFormat = 「0.00」 用'結束而不是選擇。即使輸入變量被聲明爲一個字符串,我也試過這段代碼,並且sum()工作。該錯誤必須來自您的代碼或fomating中的其他內容。 – UGP
在文本更改後嘗試'Application.Calculate',或使用'Sheet1.Range(「H9」)計算vba代碼中的總和值Value = Application.Sum(Range(「H8:G8」))' – UGP
I嘗試了你的第一個建議,但它沒有把格式改回數字。可能,正如你所說的,在Excel格式化方面有些問題。 – BombSquad