質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

0回答

270閲覧

【VBA】or【Python】Fujifilm複合機のFAX機能をPCで操作するには

Robert

総合スコア0

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

4クリップ

投稿2024/06/14 03:32

実現したいこと

VBAまたはPythonを使ってExcelで作成したシートをfujifilm複合機で自動FAXするようにしたい

発生している問題・分からないこと

現状は以下の通りです。
(Windows10、Office2021版Excel、複合機 FUJIFILM Apeos C2360を社内LANで接続)

① 作成したExcelシートを印刷メニューからプリンタ「FUJIFILM Apeos C2360 FAX」を選択し印刷ボタンを押します。
② 前面に「印刷中」のポップアップが表示され、その背面に「ファックス送信の設定/確認:ファイル名」ダイアログが開くのでこちらをアクティブにします。
③ [宛先番号/アドレス]欄にFAX番号を入力し[送信開始]を押します。
④ 宛先の一覧に自動的に追加しますという「警告」のポップアップが表示されるので「OK」を選択します。

①~④を自動化するためにVBAでコードを組んでみましたがプリンタ選択をし印刷を始めるところ(①)までしか分からず困っております。ファックス送信設定ダイアログにFAX番号を送って送信開始をさせるところがどのようにしたらいいのか分かりません。

該当のソースコード

VBA

1Sub Send_Fax() 2 Application.ActivePrinter = "FUJIFILM Apeos C2360 FAX on Ne06:" 3 ActiveSheet.PrintOut 4 5 'この先が分かりません… 6End Sub

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

VBAで無理ならPythonからVBAを起動し、ダイアログを操作できないか試しましたがうまくダイアログをつかめませんでした。
(Python 3.12.3、xlwings 0.31.4、pygetwindow 0.0.9、pyautogui 0.9.54 使用)

import xlwings as xw
import pygetwindow as gw
import pyautogui as pag
import time

path="C:/Users/xxxxxx/Desktop/FAX_TEST.xlsm"
wb=xw.Book(path)

title='FAX_TEST.xlsm'
e1=gw.getWindowsWithTitle(title)[0]

#Pythonから上記マクロを起動してます
macro=wb.macro('Send_Fax')
macro()

time.sleep(2)

# ↓ファックス送信ダイアログのタイトルです
title='ファックス送信の設定/確認:FAX_TEST.xlsm'
e2=gw.getWindowsWithTitle(title)[0]

time.sleep(2)
e2.activate()

time.sleep(2)
pag.write('03-xxx-xxxx')

エラーは発生しないのですが、ダイアログが表示された状態で止まっています。
ダイアログが前面に出ていますが、タイトルがグレーアウトしているのでアクティブにはなっていません。

補足

PythonからのGUI操作ではなく複合機のAPIを操作する方がいいのでしょうが、ネット上に分かりやすく紹介してありません。FujiFilmのHPにも参考にできる資料が無くて困っております。どなたかご教授お願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問