Access2013でXMLファイルを読み込むVBAを作成しています。
VBA実行時に「実行時エラー '-2147467259(80004005)': 未宣言の名前空間の接頭語を参照します :'a'」と表示されてしまい読み込むことができません。
色々調べた結果、下記のページが今回のエラーに関係ありそうということは分かったのですが、VBAのソースをどのように書き換えれば良いか分からず苦戦しております。
http://support.microsoft.com/kb/280457/ja
解決法をご存じ方がいらっしゃいましたらご教授いただければと思います。
よろしくお願いします。
--------------以下ソース--------------
XMLファイル
<?xml version="1.0"?>
<rss version="2.0">
<a:b>0</a:b>
<title>test</title>
</rss>
VBA本文
Sub readXml()
Dim XDoc As MSXML2.DOMDocument
Dim node As MSXML2.IXMLDOMNode
Set XDoc = New MSXML2.DOMDocument
If XDoc.Load(CurrentProject.Path & "\" & "a.xml") = False Then
MsgBox "読み込み失敗"
Exit Sub
End If
Dim rs As New ADODB.Recordset
rs.Open "test", CurrentProject.Connection, , adLockOptimistic
rs.AddNew
For Each node In XDoc.selectNodes("rss/title")
rs!title = node.Text
rs.Update
rs.Close
End Sub
No.2ベストアンサー
- 回答日時:
前の方が書いてる通り
<rss version="2.0">
は
<rss version="2.0" xmlns:a="http://xxxx/">
でなくてはいけません。
一度、XMLファイルを読み込んで
・<rss version="2.0">を、<rss version="2.0" xmlns:a="http://xxxx/">に置き換える。
・<xx:xx>のタグを別のもに置き換える。
・<xx:xx>のタグの:を取り除く。
や
これXMLじゃないんですけどと、XML提供元に文句をいう。
などです。
ご回答いただきありがとうございます。
「・<xx:xx>のタグの:を取り除く。」の方向で対処したいと思います。
お忙しい中ご回答いただきありがとうございました。
No.1
- 回答日時:
名前空間aが定義されていません。
a:bのaは名前空間のつもりで書いてますか?
<rss version="2.0">
は
<rss version="2.0" xmlns:a="http://xxxx/">
とかしないとまずいのでは?
この回答への補足
ご回答いただきありがとうございます。
読み込み元のXMLは、別のところから提供されているのでどのような意図でこのように書いているのか分かりません。
XMLが間違っているということで大丈夫でしょうか?
VBA側で読み込み時にこのタグを読み込まないようにするなどVBA側で対応できる方法はありますでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- Visual Basic(VBA) 実行時エラー´5854´ 文字列型パラメーターが長すぎます。 3 2023/06/08 21:17
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) vbaの構文の修正相談(xmlファイルを順に開いてコピペ作業) 1 2023/04/22 01:18
- Visual Basic(VBA) VBAでファイルを開くプログラムがエラーです 2 2023/02/21 16:56
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- Visual Basic(VBA) エクセルVBA(実行時エラー438)の対処法を教えてもらえないでしょうか 3 2023/04/22 13:43
- Visual Basic(VBA) Excel-VBAでのファイルの開き方 4 2023/02/14 11:01
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
VBA でxmlの全要素・属性の読み込み
Visual Basic(VBA)
-
DOCUMENT行の書き出しについて-VBAで
XML
-
VBでXMLデータをMS-ACCESS2000へインポートしたい
Visual Basic(VBA)
-
-
4
VBでXMLファイルを作ると xmlns= が・・・
Visual Basic(VBA)
-
5
フォーム上の全てのコントロールを取得したい
Access(アクセス)
-
6
Accessのリンク先を相対パスにしたい
その他(データベース)
-
7
VBの画面で、全ウィンドウを一気に閉じるには
Visual Basic(VBA)
-
8
VBA XML の置換方法
XML
-
9
Accessで別テーブルの値をフォームに表示したい
その他(データベース)
-
10
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Access VBAでXMLが読み込めない
-
u_shortなどの省略した宣言につ...
-
CPUの考え方を教えてください ...
-
東芝のDynabookなのですがアン...
-
ルート要素ノードが2個ある場合?
-
あるノードリストに、特定の名...
-
XMLで要素が記述された順番に意...
-
UTF-8でエンコーディングとはど...
-
VBSでxmlの値を書き換えたい
-
SNMP リンクダウンとノードダ...
-
双方向リストの関数
-
XMLで特殊文字を扱うにはどうし...
-
Windowsで見かけるxmlファイル...
-
XML同じ名前の要素を自動で集約...
-
TreeViewの再表示のちらつきを...
-
XSLで、XMLの空タグを制御したい。
-
VB.NETで最後フォのフォ...
-
xmlファイルが上手にHTMLに変換...
-
同じタグ名の項目取得
-
VBAでXMLを出力するプログラム...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
excelにてweb関数を使い、webデ...
-
Access VBAでXMLが読み込めない
-
MagpieRSSを使用して自分のHPに...
-
simplexml_load_file() のかわ...
-
IEが表示できないXML
-
127.0.0.1とlocalhost
-
アメブロ rss 読み込み
-
Access VBAで指定した要素を読...
-
下水道公団の電子納品のチェッ...
-
DTDで、空要素をエラーしたい
-
RSS2.0の書き方
-
HTTPステータス 404 - There is...
-
東芝のDynabookなのですがアン...
-
CPUの考え方を教えてください ...
-
バッチファイルでテキストファ...
-
XML、XSLTの適応エラー(IEから...
-
XMLで要素が記述された順番に意...
-
XML同じ名前の要素を自動で集約...
-
xmlファイルが上手にHTMLに変換...
-
UTF-8でエンコーディングとはど...
おすすめ情報