2017-03-08 25 views
0

最終的にNCAAメンズバスケットボールのブラケットプレースメントを作成するには、データテーブルを消去する必要があります。残念ながら、私が与えられたデータの一部はレコード(つまり10-20)を10月20日に変換しましたが、他のほとんどのレコードはWin-Lossフォーマット(つまり20-10)のままです。誰でも、VBAのワークシートの日付フォーマット(10月20日)を意図した勝敗フォーマット(10-20)に変換する方法について提案はありますか?Excel VBA-データクリーニング - 日付の文字列

私はこれを初めて熟知しており、この問題のためにVBAを使用する必要がありますので、助けてください。

+0

感謝万人!ちょうどそれを働かせる。 – Wombat

答えて

2

あなたが変換し、この短いマクロを実行したいセルを選択:

Sub fixdata() 
    Dim v As Variant 

    For Each r In Intersect(ActiveSheet.UsedRange, Selection) 
     v = r.Value 
     If v <> "" And IsDate(v) Then 
      r.Value = "'" & Day(v) & "-" & Month(v) 
     End If 
    Next r 
End Sub 

前:

enter image description here

以降:

enter image description here

EDIT番号を1:

訂正:

Sub fixdata() 
    Dim v As Variant 

    For Each r In Intersect(ActiveSheet.UsedRange, Selection) 
     v = r.Value 
     If v <> "" And IsDate(v) Then 
      r.Value = "'" & Month(v) & "-" & Day(v) 
     End If 
    Next r 
End Sub 
+0

20-10のエントリを20-10の代わりに10-20に、6月のエントリを6-4の代わりに4-6に変換する必要がありますか?月曜日のように聞こえる質問から、月曜日よりもむしろ月曜日 – barrowc

+1

@ barrowc THANKS - 修正を参照してください。 –

関連する問題