- ベストアンサー
AccessでRS232Cからデータを受信する方法
- Access2019を使用して外部機器データをRS232C経由で受信する方法について教えてください。
- スィッチがオンになったときとオフになったときのデータをAccessで取り込む方法を教えてください。
- 通信方法や設定、受信方法についてのサンプルプログラムなどがあれば教えてください。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
回答5です >同じ記述をしてもプログラムが走りませんでした。 「走りませんでした」では何も進みませんよ 恐らく以下のようなエラーメッセージが出たハズなんだが 「ポート"com1"が有りません」 貴殿のパソコンに"com1"は憑いてますか? 現在の市販パソコンには概ね付いて無いんだけど? よくあるUSB-RS232C変換器 https://www.buffalo.jp/product/detail/src06usb.html 何も考えず自動セットアップしてポート番号が"com1"になる事例は珍しい 多くの場合、com4~com20くらいの間の番号になるんだけど? 実のところ、上記の事は些細などーでもえー小さな問題なんですよ 本当の大きな問題は >RS232C経由で、外部機器データを取り込みたいと思います。 外部機器って何ですか? 具体的にメーカと機種名を挙げないと何も進みませんよ それはメーカと機種によって通信手順が違うからです 多くの方々はUSBケーブルみたいに RS232Cケーブルを挿せば勝手に通信してくれると思い込んでる RS232Cは勝手に通信してくれません 例えば↓の計量器と https://www.aandd.co.jp/adhome/products/balance/fz-iwp.html ↓の計量器とでは https://www.aandd.co.jp/adhome/products/balance/hc-i.html 通信フォーマットが違うんで、同じプログラムでは動きません 同じメーカなのにですよ これは用途が違うからですが 上段のは送信データは単純に質量 下段のは質量に加えて、個数データが憑いてくる それに合わせて通信プログラムを書かねばねりません 因みに大手メーカ製ならサンプルプログラムは用意してるよ ↑のAANDDの事例では取説にサンプルプログラムが記載されてる 但し、Access用ソフトが用意されてる事例は期待できないでしょう C言語かVB、せいぜい頑張ってもExcel用 Excelで通信出来たならそのExcelのセルをAccessに貼り付けるだけじゃん? https://www.feedsoft.net/access/tips/tips170.html
その他の回答 (6)
- lumiheart
- ベストアンサー率47% (1141/2405)
↓を理解するスキルが無ければシリアル通信プログラムを作るのは不可能です microsof公式サイト 方法: Visual Basic でシリアル ポートに文字列を送信する https://docs.microsoft.com/ja-jp/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-send-strings-to-serial-ports 方法: Visual Basic でシリアル ポートから文字列を受信する https://docs.microsoft.com/ja-jp/dotnet/visual-basic/developing-apps/programming/computer-resources/how-to-receive-strings-from-serial-ports そもそも自力で上記サイトを探しだすスキルが無い人に通信プログラムは書けないんだけど
お礼
VBとACCESSでは、違いがあるようで、同じ記述をしてもプログラムが走りませんでした。 もっと勉強をする必要があるようです。 ご指摘ありがとうございました。
- hahaha8635
- ベストアンサー率22% (800/3610)
>>excel1ではなくaccessでないでしょうか? 中身は一緒ですが 232Cのコンソール http://www5b.biglobe.ne.jp/~kouta_y/news/newsvb/vb14.html APIの呼び出し http://www.ne.jp/asahi/hishidama/home/tech/excel/dll.html DLLを読み出し 直接WINDOWSの機能を使うことができます エクセルもワードもaccessも関係ありません すべての機能が使えるので DX3Dを使ったゲームアプリも作れます
- TIGANS
- ベストアンサー率35% (245/681)
>VBAでは、どのように記述するのでしょうか? 回答内に引用したURLの先は読んでみましたか? 読んでみて、その疑問を書かれているとしたら、 どのURLの、何処が分からなかったのか記載してください。
- hahaha8635
- ベストアンサー率22% (800/3610)
VBA で APIを直接操作すればいいです エクセルでの例 https://qiita.com/pbjpkas/items/f81947ce38941356ebe4
- TIGANS
- ベストアンサー率35% (245/681)
趣味?仕事? 仕事でそのレベルであればちゃんとお金払って助けてもらうべき。 https://www.aggsoft.com/serial-data-logger/rs232-to-mssql.htm 趣味であれば自分で苦労して自学自習することも必要 Access自体にシリアルと接続する機能はありませんAPIなどを経由します。 VBAやC#などで書くことも出来るけど、Access2019で検証している人がいるとも思えないですね。 http://www.matsumasa.com/blogs/codetech/archives/365 http://www.matsumasa.com/blogs/codetech/archives/464 http://akirath86.blogspot.com/2012/10/excelvba.html http://www.nullskull.com/q/10352459/webcamvideo-capture-through-ms-access-forms.aspx
補足
趣味と仕事と半々ですかね、、、 思った以上に難しいようですね、、、 VBAでは、どのように記述するのでしょうか? 参照設定に必要なものはありますでしょうか?
- aokii
- ベストアンサー率23% (5210/22062)
補足
excel1ではなくaccessでないでしょうか?
補足
ご指摘ありがとうございます。 おっしゃる通り、USBにつなげたバーコードリーダーのような感じで取り込んだもので、、、 なんともなりませんでした。 外部機器ですが、ハウ(株)様の I/O de LAN のPE01Aです。 テラタームで通信確認がようやくできたところで、COM4を使用していました。 単純にスイッチのON、OFFデータの取り込みなのですが、 一定時間(1分おき)で、どのスイッチがONになっているかOFFになっているかを 取り込めないかと思っております。 EXCEL でサンプルプログラムがネットにでているので、試しているのですが、 EXCELのVBAとACCESSのVBAで記述などが違うもところもあり、 調べながらやっております。 (EXCELでVBAを使用したことがないので、、、フォームの作り方もわかりませんでした) さっきようやくわかりましたが、 その程度の知識しかなかったもので、勉強不足が多くて困っておりました。