こんにちは。
エクセル上のボタンを押すとダイアログから対象のエクセルファイルを開いてその中身を既存Sharepointリストに新規アイテム作成するといったプログラムを作成中です。
データコネクションにはADOを使用しています。
UPDATE文やDELETE文は問題なく動いたのですが、INSERT 文を実行すると以下のエラーが発生します。
============================================
実行時エラー '-2147217887(80040e21)':
フィールド'Title'は更新できません。フィールドが更新可能ではありません。
============================================
Do Until文で2行目以下の中身を変数に置き換えて空白になるまで新規作成を続けるという形です。
「ListID」は既にこれより前に定義済でUPDATE文やDELETE文で動作確認はできています。
Sharepointリスト側での必須入力はタイトルのみで、普段使わないようにしていてNAといれるようにしています。
""や'で囲んだりしてみましたがうまくいきませんでした。
SQL文が悪そうだと推測していますが、具体的にどのように変えたらいいのかが試行錯誤したり調べてみてもわかりませんでした。。
何卒ご教授のほどよろしくお願いいたします。
Debug.Print testSQLのイミディエイト↓例
INSERT INTO ListId (Title,test,test2) VALUES("NA",'A','A') ;
INSERT INTO ListId (Title,test,test2) VALUES('NA','B','B') ;
Do Until Cells(y + 1, 1).Value = ""
StrUserName = Cells(y + 1, 2).Value
StrID = Cells(y + 1, 3).Value
With rs
.Open "SELECT * FROM list", cn
.MoveFirst
testSQL = "INSERT INTO ListId (Title,test,test2) VALUES(""NA""," & "'" & StrUserName & "'" & "," & "'" & StrID & "') ;"
Debug.Print testSQL
cn.Execute testSQL
.Close
End With
Loop
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/03/04 13:07