おじょろじょの、「河童の話は聞かないで。」

プログラムに関しての覚え書きや、仕事のぼやきなど。。

Accessで255文字以上のインポートで。。できない。

ハマった。。

データ型をメモ型にしてるにもかかわらず

255文字で切れる。これは。。

環境:Access2010

 

インポート元データはExcelでメニューからインポートする場合

内部的にはクエリになるようだ。

色々調べたらやはり同じような記事が多くヒットして

 

やっぱり

 

無理らしい。。(絶対おかしいぞAccess!)

 

という事で、

 

Excelをカンマ区切り(CSV)でいったん掃出す、

(セル内のデータに「,」カンマがあっても知らないよw)

で、AccessVBAでって事です。

Private Sub インポート()
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim i As Long
    Dim buf As String
    Dim varStr As Variant
    Dim strPath As String

    strPath = CurrentProject.Path

    Set db = CurrentDb
    Set rs = db.OpenRecordset("ここはテーブル名ね", dbOpenDynaset)

    Open "C:\ファイルパスね\ファイル名.csv" For Input As #1

    Do Until EOF(1)
        Line Input #1, buf
        varStr = Split(buf, ",", , vbTextCompare)
        rs.AddNew
        For i = 0 To UBound(varStr)
            rs(i) = varStr(i)
        Next i
        rs.Update
    Loop
    Close #1
    rs.Close: Set rs = Nothing
    db.Close: Set db = Nothing
End Sub

 

そして、あとは

オラオラァーいけー!

 

はい、切れずに取込めました。

 

(どちら様かのを参考にさせて頂きました。)