Board logo

標題: 更新問題 [打印本頁]

作者: mdr0465    時間: 2017-8-31 23:44     標題: 更新問題

各位大大,

請幫忙看附件,為什麼在"A"欄朼會自動加資料,但在"B"就唔會? 但當我輸入只是"數字"就可以自動加資料??

謝謝
[attach]27704[/attach]
作者: GBKEE    時間: 2017-9-1 09:29

回復 1# mdr0465
WorksheetFunction.Count 方法
會統計含有數字的儲存格,並統計引數清單內的數值。

  1. Format(Mid(Sheets(1).Cells(64, 1), 6, 11), "dd/nn/yy")
複製代碼

是文字

WorksheetFunction.CountA 方法
會統計不是空白的儲存格,以及引數清單內的數值。
  1. Application.Goto ActiveWorkbook.Sheets(2).Cells(1, 2)
  2.         'On Error Resume Next
  3.             cnt = WorksheetFunction.CountA(Range("b:b"))
複製代碼

你的程式可修改為CountA

試試看
  1. Sub test()
  2. Dim rng As Range
  3. Dim i, cnt, number As Integer
  4. Dim x As Range
  5. i = 73
  6. number = 0
  7. For i = i To 86
  8. Set x =  ActiveWorkbook.Sheets(1).Cells(i, 1)
  9. If IsNumeric(x) = True And IsEmpty(x) = False Then
  10. number = number + 1
  11. End If
  12. Next
  13. cnt = WorksheetFunction.Count(ActiveWorkbook.Sheets(2).Range("a:a"))
  14. For i = 1 To number
  15. With ActiveWorkbook.Sheets(2)
  16. .Cells(cnt + i, 1) = i
  17. With .Cells(cnt + i, 2)
  18. .Cells = Format(Mid(ActiveWorkbook..Sheets(1).Cells(64, 1), 6, 11), "YYYY/MM/DD")
  19. .NumberFormatLocal = "mm/dd/yy;@"
  20. End With
  21. End With
  22. Next
  23. End Sub
複製代碼

作者: mdr0465    時間: 2017-9-1 12:53

本帖最後由 mdr0465 於 2017-9-1 12:55 編輯

回復 2# GBKEE

GBKEE 謝謝你的回覆, 我是VBA初哥, 我都知道我寫得很累贅, 謝謝你幫我簡化,
但有一樣野想向你請教
.Cells = Format(Mid(ActiveWorkbook.Sheets(1).Cells(64, 1), 6, 11),"YYYY/MM/DD")
.NumberFormatLocal = "dd/mm/yy;@"
   
以上這一段的紫色部份
1. 為什麼要先設定為"年/月/日"??是有什麼用途呢??
2. "@" 是有什麼用途呢??

謝謝賜教
作者: GBKEE    時間: 2017-9-1 17:03

本帖最後由 GBKEE 於 2017-9-2 05:59 編輯

回復 3# mdr0465
  1. Format(Mid(Sheets(1).Cells(64, 1), 6, 11), "dd/mm/yy")
複製代碼
Format傳回是, "yyyy/mm/dd"或 "mm/dd/yyyy"系統才會認定 是日期格式
  1. Sub Ex()
  2.     With ActiveCell
  3.       .Value = Format(Date, "dd/mm/yy")
  4.         MsgBox Date & "-->" & .Value
  5.     End With
  6. End Sub
複製代碼
2.  "@" 是有什麼用途呢??   
"@"  表為文字格式
可詳看VBA的說明(2010)
Excel  /  輸入資料並設定格式  /  設定資料格式  /  建立或刪除自訂數字格式   
[建立或刪除自訂數字格式]
作者: mdr0465    時間: 2017-9-1 19:50

回復 4# GBKEE
版主,明白了, 謝謝你的教導, 受教了,
謝謝




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)