いつもお世話になります。
下記サイトを参考にredmine からvbaを使ってチケット出力を行っており、デフォルトのiDやトラッカーは問題なく取得出来ています。
しかしカスタムフィールドで登録した値に関しては以下のように記載してみても、エラーが発生し取得できない状況です。
よろしくお願いします。
ソース
vba
Dim baseurl As String, targeturl As String Dim header As Integer, row As Integer Dim min As Integer, max As Integer Dim cnt As Integer Dim ticketid As String Dim dom As Object Dim issue As Object baseurl = "http://redmine/" header = 5 row = header + 1 min = 1 max = 100 cnt = min '[A~G]欄の[row~(max-min+1)]行まで一気にクリアする Range(Cells(row, 1), Cells(max - min + 1, 7)).Clear Do While Cells(row, 1) = "" ticketid = Trim(str(cnt - header)) 'APIアクセスキーなし targeturl = baseurl + ticketid + ".xml" 'APIアクセスキーあり 'targeturl = baseurl + ticketid + ".xml?key=aaaaaaaaaaaaaaaaaaaa" Set dom = CreateObject("MSXML2.DOMDocument") dom.async = False dom.setProperty "ServerHTTPRequest", True dom.Load (targeturl) Set issue = dom.ChildNodes.Item(1) If Not (issue Is Nothing) Then Cells(row, 1) = issue.getElementsByTagName("id").Item(0).text Cells(row, 2) = issue.getElementsByTagName("project").Item(0).getAttribute("name") Cells(row, 3) = issue.getElementsByTagName("tracker").Item(0).getAttribute("name") Cells(row, 4) = issue.getElementsByTagName("status").Item(0).getAttribute("name") Cells(row, 5) = issue.getElementsByTagName("priority").Item(0).getAttribute("name") 'カスタムフィールド ここでエラーが起きる。 Cells(row, 6)=issue.getElementsByTagName("cf_116").Item(0).text row = row + 1 End If cnt = cnt + 1 If cnt > max Then GoTo 9999 End If Loop 9999
エラー
オブジェクト変数または With ブロック変数が設定されていません
参考サイト
https://qiita.com/i-chiaki/items/455a8f639126b11ca090
まだ回答がついていません
会員登録して回答してみよう