ACCESS2003の質問です。


エクセルのシートをインポートしたいのですが、
日付と文字列が混在しているフィールドがあります。

すべて文字列として認識させようと思い、
テキスト型でインポートしようとしたところ、
日付の部分がシリアル値になってしまいました。

日付は日付の形のまま、文字列はそのままで
インポートする方法はあるでしょうか。

もしくはシリアル値になったものを
日付型に直す方法があったら教えてください。

回答の条件
  • 1人5回まで
  • 登録:
  • 終了:2009/10/01 18:00:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答2件)

id:taknt No.1

回答回数13539ベストアンサー獲得回数1198

ポイント35pt

エクセルで、シリアル値になったものを 日付にするならセルの書式設定で「日付」に指定してあげればいいだけです。

id:rupopon

ご回答ありがとうございます。

ACCESS上で変換は無理なのでしょうか。

2009/09/24 18:37:16
id:SALINGER No.2

回答回数3454ベストアンサー獲得回数969

ポイント35pt

ACCESSで一つのフィールドにテキスト型と日付型を混在させることはできないので、

テキスト型に統一するとして、インポートでシリアル値を(日付の形で)テキストにする方法がわからなかったので、

Excelの方で文字列にしてしまう方法を紹介します。


対象の列を選択して次のマクロを実行させてみてください。

Sub Macro()
    Dim r As Range
    For Each r In Selection
        r.Value = r.Text
    Next r
End Sub

日付が見かけを保持して文字列となるので、できあがったものをインポートすればいいです。

id:rupopon

ありがとうございます。

試してみます。

2009/09/24 18:44:16
  • id:SALINGER
    すいません。嘘を書いてしまいました。次に変更してください。
    Sub Macro()
    Dim r As Range
    Dim s As String
    For Each r In Selection
    s = r.Text
    r.NumberFormatLocal = "@"
    r.Value = s
    Next r
    End Sub
  • id:rupopon
    修正ありがとうございます。
    試してみます。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません