2017-05-05 13 views
0

excelを無効にして日付セルの地域設定を読み取る方法はありますか?それは以下の存在であるように、細胞内 現在提示されている形式は、表示および編集のために異なっている:Excelと地域設定

enter image description here

+0

になります1つを選択しますが、いずれかを変更して一致させます。 – CLR

+0

はい、ただし、地域の設定を読み込まないようにすることはできますか? – PDS

+0

'Application.International(xlCountrySetting)'を使ってブックの地域設定を変更できますか? – Tom

答えて

2

モジュールにfollingを入れて: をこれが機能するために、我々は中に、ユーザーの初期設定を保存する必要がありますパブリック変数。これは、その後ThisWorkbookオブジェクトにこれを入れModuleないObject

Option Explicit 
Public InternationalDateSetting As XlApplicationInternational 

に置かれる必要があります。ユーザーがブックを開くと、ユーザー設定がパブリック変数に設定されます。次に、ユーザがワークブックを非アクティブ化すると(すなわち、別のワークブックまたは別のプログラムへの変更)、ユーザ設定がデフォルトにリセットされ、ユーザがブックをアクティブにしたときにカスタム設定に変更される。これを行うには、それはあなたの地域の設定をYYYY/MM/DDに設定されていますが、その後、dd/mm/yyyyのために、セルの書式を設定している。アプリケーションの設定を制御しますが、ブックの特定

Option Explicit 
Private Sub Workbook_Open() 
    InternationalDateSetting = Application.International(xlMDY) 
End Sub 
Private Sub Workbook_Activate() 
    '' Please look at https://msdn.microsoft.com/en-us/library/office/ff840213.aspx for all settings 
    '' Set to true for month-day-year order, false for day-month-year 
    Application.International(xlMDY) = True 
    '' Or uncomment and use: 
    '' 0 = month-day-year 
    '' 1 = day-month-year 
    '' 2 = year-month-day 
    '' You will also need to change the Workbook_Open and Workbook_Deactivate from 'xlMDY' to 'xlDateOrder' 

    ' Application.International(xlDateOrder) = 0 
End Sub 
Private Sub Workbook_Deactivate() 
    Application.International(xlMDY) = InternationalDateSetting 
End Sub 
+0

実行時エラーが表示される - >オブジェクトが必要 – PDS

+0

ホストファイルへのリンク経由でいくつかの例でExcelファイルを提供できますか? – PDS

関連する問題