Board logo

標題: EXCEL 日期中的日、月數值讀取相反、如何解決 [打印本頁]

作者: Mindyj    時間: 2013-5-30 09:33     標題: EXCEL 日期中的日、月數值讀取相反、如何解決

請問若原始資料4/1/2013的資料為mm/dd/yyyy,

可是一匯入excel卻自動判讀為dd/mm/yyyy,

這種情況該如何解決呢?

謝謝
作者: Hsieh    時間: 2013-5-30 09:48

回復 1# Mindyj

[attach]15103[/attach]
作者: Mindyj    時間: 2013-5-30 10:08

感謝版主、受益無窮
作者: Mindyj    時間: 2013-5-30 11:02

請教、若不使用此方法該如何解決呢?  是否有儲存格format的方式呢?

ex:儲存格A1D/MM/YYYY
        儲存格B1引用A1更改讀取數值方式為:MM/DD/YYYY
作者: GBKEE    時間: 2013-5-30 11:29

回復 4# Mindyj
也可用VBA 處裡
  1. Option Explicit
  2. Sub Ex()
  3.     With Application
  4.         'FindFormat 屬性  傳回要尋找之儲存格格式類型的搜尋準則。
  5.         .FindFormat.Clear
  6.         .FindFormat.NumberFormatLocal = "dd/mm/yyyy"
  7.         'ReplaceFormat 屬性    設定取代準則用以取代儲存格格式。然後取代準則將會用於 Range 物件中 Replace 方法的後續呼叫。
  8.         .ReplaceFormat.Clear
  9.         .ReplaceFormat.NumberFormatLocal = "mm/dd/yyyy"
  10.     End With
  11.     ActiveSheet.Cells.Replace "", "", SearchFormat:=True, ReplaceFormat:=True
  12. End Sub
複製代碼

作者: Mindyj    時間: 2013-5-30 11:57

GBKEE版主、如果希望不要用VBA呢?因為格式中有兩種格式
一種為MM-DD-YYYY、另一種為dd/mm/yyyy,
所以現在要找土法鍊鋼的方式完成這項動作
作者: GBKEE    時間: 2013-5-30 12:19

回復 6# Mindyj
  1. Option Explicit
  2. Sub Ex()
  3.     Replace_Format "MM-DD-YYYY"
  4.     Replace_Format "dd/mm/yyyy"
  5. End Sub
  6. Sub Replace_Format(M As String)
  7.     With Application
  8.         'FindFormat 屬性  傳回要尋找之儲存格格式類型的搜尋準則。
  9.         .FindFormat.Clear
  10.         .FindFormat.NumberFormatLocal = M
  11.         'ReplaceFormat 屬性    設定取代準則用以取代儲存格格式。然後取代準則將會用於 Range 物件中 Replace 方法的後續呼叫。
  12.         .ReplaceFormat.Clear
  13.         .ReplaceFormat.NumberFormatLocal = "mm/dd/yyyy"
  14.     End With
  15.     ActiveSheet.Cells.Replace "", "", SearchFormat:=True, ReplaceFormat:=True
  16. End Sub
複製代碼

作者: Mindyj    時間: 2013-5-30 15:16

感謝GBKEE版主,這個VBA真的很棒、很省事。只是使用者希望連這個步驟都省略,所以最後我只能另外加一個SHEET來做格式處理,方式如下:
1. 以T()判斷是否為日期格式;
2.1 非日期格式:先用VALUE(MID())選取需要的數字;
2.2 若為日期格式則利用YEAR()、DATE()和DAY()格式進行截取數字;
3. 接著再用CONCATENATE做文字組合;
4. 最後用DATEVALUE()設定為日期格式。
作者: mssiao    時間: 2013-6-3 18:05

土法煉鋼喔
先把12/2/2002拆成excel三個儲存格
12     2      2002
將三個儲存格交換位置後
2002       2       12
貼到 記事本內
記事本內 用/取袋空格
記事本內的資料就會變成
2002/2/12
之後貼回 excel




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