IT仕事

VBA-JSONはダメだったがPowerQueryはよかった

投稿日:

オンラインショップの在庫管理目的で、業務システムを動かしているAccessかExcelで、何とかしてWebの商品マスターAPIのデータを取ってきたい。

最初、VBA-JSONというのを使えばいいのかなと思って、一日触ってみた。
いいとこまではいくのだが、名前と階層をいちいち書いていかなくては行けなくて、結構それが面倒で小難しくて、すぐに嫌になった。

次に試してみたのは、Excel2013のアドインのPowerQuery。
結論を先にいうと、うまくいった。
プログラムレスで、JSONをExcelのシート上にテーブル表示できる。
作ったシートはAccessでリンクできた。
試していないけど、Accessのクエリで加工もできそうだ。

途中にぶち当たった問題:

itemなどと表示されていてリンクのついている文字をクリックすることでその階層の表示ができるのだが、欲しい項目を見つけるのに結構苦労するところが一つ。
まあこれは、http://json.parser.online.frのような、JSONをパースして視覚的に表示してくれるツールでもって、あらかじめ自分の欲しい項目がどれなのか、リストアップしておけば問題ないであろう。

CS-CARTのWebAPIは、サーバ環境によってURL文字列が変わる。
「mod_rewritが無効になっている場合は・・・」とマニュアルにあって、自分の環境はまさにそれだと気が付くのに大分時間がかかった。

CS-CARTの商品リストをWebAPIから取ってきたいのが本命だったのだが、何度やっても最大50件までしか取ってきてくれない。
原因はCS-CART側にあることは、少し調べてみてわかったのだが、対応策が見えない。
ユーザーが少ないせいか、WEBに情報が少ない。
試行錯誤して、URLの最後に「limit=100」のように文字を入れてみたら、100件とれた! マニュアルには書いてなかったけど、それでもうまくいくときにはいくものだ。
50件までしか取れなかったURL:https://www.hogehoge.com/api.php?_d=products
100件取れたURL:https://www.hogehoge.com/api.php?_d=products&limit=100

-IT仕事

執筆者:

関連記事

no image

フォトショップで画像の周囲に枠線を書くやり方

自分のための備忘録。 1.新規レイヤーを作成し、全てを範囲選択(Ctrl+A) 2.選択範囲- 選択範囲を変更- 境界線 で、1px。 3.選択範囲- 選択範囲を変更- 滑らかに で、1px。 4.編 …

no image

OneDribeアプリのせいでAndrodiスマホに容量不足のメッセージが

ココ最近、Androidスマホに容量不足のメッセージが頻繁に出るようになっていたので、さて原因は何だろと。 スマホの設定画面で、アプリをサイズ順に並べてみた。 すると、OneDriveが飛び抜けて多く …

no image

IME2007だめだめ

Office2007にしてから日本語入力の変換が重くて重くて仕方がない。 もしやと思うと、やっぱり。 IMEがバージョンアップして「2007」になっていた。 IME2007だめだめ。 ネット検索すると …

FileMaker Pro 12 での汎用トグルボタンの作り方

Accessではとっても簡単なトグルボタンだが、FileMakerでそれを作るのは簡単ではない。むしろとっても面倒。 それなのに、画面いっぱいにいくつものトグルボタンを作る仕事が出てきた。 一つ一つの …

no image

WPに投稿、評価機能を設ける

■プラグインの準備 WP-PostRatingsをインストールする。 WP-PostRatingsの日本語化ファイルをFTPで上書きする。 ■評価させたい投稿を選択 投稿(コメント)と評価を設けたい投 …