IT仕事 MS Access

AccessのデータをGoogleスプレッドシートに表示する

投稿日:

会社のネットショップで、お客様から電話で荷物の出荷状況について問い合わせがあった場合に、現状ではすぐに対応できていなかった。

荷物の伝票番号は、クロネコヤマトのB2のソフトか、あるいはAccessの業務システムを調べられる。
だが、B2は一台のPCにしかインストールされていないし、Accessは起動に時間がかかるため、お客様を電話口で待たせしてしまう。

社員全員のPCでは、常にGmailは表示しているので、ブラウザのお気に入りに登録しておくなどしたWebページで、全員が簡単かつスピーディに伝票が検索できると、ありがたいのだが。

最初に調べたのは、Accessから伝票データをエクスポートして、そのままWebページにできないかという、切り口。

わかったのは、簡単に、DoCmd.OutputTo acOutputQueryで、Webページは作れる。コードを書かなくてもやりたいことが簡単にできるのはとても便利だ。
また、クエリそのままではだめだけど、テーブルにしておけば、Webページを作った際にハイパーリンクも機能する。
軽くて、Webページはスピーディに開く。
ただ、デザインは素っ気ない。

また、心配事としては、リンクのアドレスを知られたら誰にでもアクセスできてしまうことかな。

.htaccessを利用したアクセス制限やBASIC認証でかわす手もあるけど。

そこで、次に考えた(&採用した)のが、以下の仕組み。

■Access(業務システム)側
1.ご注文NO,発送日,お客様,フリガナのリストの選択クエリを作る
2.作ったクエリを、UTF-8に変換して保存し、さらにFTPでレンタルサーバにファイルをアップロードする

参考:
T’sWare Access Tips #578 ~UTF-8形式でテキストファイルに出力するには?~
T’sWare Access Tips #409 ~FTPでファイルをアップロードする方法~

■Googleスプレッドシート側
1.セルA1に、前処理で作成したファイルのパスを記述する。
2.セルA2に、見出しを付ける。
3.セルA3に、関数のImportData(A1)を記述し、ファイルを読み込む。

参考:
IMPORTDATA – ドキュメント エディタ ヘルプ

満足できる出来栄えになった、一応。
不満があるとすれば、
1.スプレッドシートを開くときに少々重たく感じること。
2.ブラウザのキャッシュの関係かデータが最新でない場合があること。

前者はどうにもならないが、後者なら例えばセルA1をDeleteキーで削除し、直後にCtrl+Zで戻すなどすると、最新には、なる。
ここまでが、限界かな。満足だけれども。

-IT仕事, MS Access

執筆者:

関連記事

Arigato Automation(Shopifyのアプリ)の備忘録

EC業務で「特定顧客の注文につき、注文から1日経ったら、自動で発送済みにする」・・・ということを、したい。 うちの会社の場合は、店頭受取の顧客については、発送の管理をしないため。 以下、Arigato …

UiPathのレコーディングが遅い件が改善

UiPathのブラウザーでのレコーディングが、最近、遅くて仕方がない。 前は、こんなに遅くなかったのに、なんでだろう。 Webページ上のセレクトボックスひとつ選択して、マウスポインタが青い輪郭の半透明 …

no image

Windows10 / ディスプレイが消せない/ Lenovo G560

Lenovo G560 06792UJを未だ現役で使っています。 Windows10で、ディスプレイが消せない(どう設定しても、電源が消えるかのように使わないと数分でブラックアウトしてしまう)トラブル …

no image

AccessのレポートでNoDataでイベントキャンセル後もReport_Closeが実行されて困った

Accessのレポートで表示するデータがない場合は、以下のように書けばスマートにキャンセルできる。 [sourcecode] Private Sub Report_NoData(Cancel As I …

no image

Quick TranslatorがFireFox12で使えるようになった

FireFoxをバージョンアップした際に、互換性の問題から使えなくなった、Quick Translator。 私はこれを長年使い、「これ以上に使いやすいアドオンはない」と思っているので、昨年、FFの最 …