業務効率を上げるために、VBAでエクセル内の情報を他のアプリケーションに自動入力させたいです。
入力する情報は、複数の項目があり、固定されています。
できれば、ワンクリックですべての入力フォームに自動入力させたいです。
これらのことは、VBAで実現可能なのでしょうか?
また、実現可能な場合、どのようにすればよろしいのでしょうか?
VBAを始めたばかりで何が出来て何が出来ないか、あまりわかっておりません。
VBAを習熟している方にとっては、簡単に質問であるかも知れませんが、どうぞご教授ください。
よろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
下記で紹介されているシェアウェアを試されてはいかが?
http://okwave.jp/qa5392790.html
リンク先で、興味半分でWin32APIによる貼り付けにトライしてみましたが、同じテキストボックスに見えてもハンドル(Windowsがウィンドウやコントロールを識別する背番号の様なもの)が取得できるものと、出来ないものがあり、たとえばOKWaveのページを表示した状態で、上部のアドレス欄には貼り付けられますが、検索ボックスや、ログインのボックスには貼り付けられませんでした。ただ、IEや、MS Officeアプリケーションは、ActiveX Exeとして、独立して動作するだけでなく、他のプログラムから操作できる様に作られていますので、別の方法でVBAから操作できます。#1,#2の方が「他アプリケーションというだけでは分からない」とおっしゃっているのは、そのためです。
No.2
- 回答日時:
>他のアプリケーションへ
他のアプリケーションとは具体的に何ですか。具体的に書かないと話にならない。それくらい、少数のソフトしか、素人がプログラムでデータをやり取りはできません。そういうソフトにおいて、仕組みが作られ、我々が使えるためには、市販や公開される必要があります。それをやれるのは、そのソフトを知り抜いた(技術的)、ソフト販売会社の一群の技術者で、そのソフトの製品コンセプトに合わない(商業的)と、その製品に搭載されません。他社のもの、個人は製品を改造する権利(権利的)がありませんから。またそのソフトを我々が入手しやすい(有名的)ことが必要です。
具体的に言えば、マイクロソフトのオフィス製品間などが、それの例です。VBAといった仕組みで何とかそのソフト機能と周辺機能に限り、実現しています。ここでは素人が思いつくが、したい単純なことも出来ない機能もたくさんあります。
その基礎のレベルでは、APIなどの情報が公開されているので、仕組みを研究すれば、色んなものを作れるでしょう。
そもそもエクセルは手操作で使う(大衆向けのソフトでかつ商品=大量販売を目指す)もののはずで、プログラムで使う、プログラム部品集では無い。エクセルは勉強0でも入っていける面があり、コンセプト的に表計算というものはなじみやすいので、勉強もして無いのに、直ぐ、あれをしたいという思いが出て、質問も多いが、本来エクセルでやらなければならない必然性はない。
それに初心者は、できるか出来ないか、前もって結論を聞きたがる。
はっきり言えば、やや長期的な勉強次第だというしかなかろう。
もっとプログラム力やソフト全体の視野が広がれば、エクセルとかだけでなく、色んな方法とかが身近になるでしょう。しかしそれらを系統的に教えてくれる学校や情報(本、WEBなど)は極く少なく、普通の人には不可能と思います。
エクセルで、ものを考えているレベルでは、大それたことは考えるなということ。
そういう環境(会社就職)に自ら入って行か無いと、勉強できないでしょう。
VBAでさえ、勉強を持続して、習熟するのは、統計的には1000人に3人とか100人に3人とかしか、行かないでしょう。
不可能ではないが、道は険しく、ほとんどの人は、そのうち他の道(事務系の仕事に就職)を行ってしまって、縁遠くなるのでしょう。
==
質問者に対する結論は
エクセルーアクセス、エクセルーワードぐらい以外は
難しい。一般のソフトはプログラム的に閉鎖的(これが原理的に普通なんだ。開始すると、一気に実行して、途中で他のプログラムの介入を受けつけない)。
ーー
CADソフトなどでエクセルを意識した、そういう風にプログラムを組んだソフトが在る。意識して、相手がエクセル(の大衆性、便利性)を意識して、連携のプログラムを設計したわけ。
ーー
データファイルでの連携性
CSVファイルなどにデータ落として、相手のソフトに読み込ませる方法はあるが、瞬時性に欠ける。相手ソフトでは、手入力か、所定ののファイルを手動で読み込ませるだけで、プログラムで、CSVを読み込ませるプログラムの連携もほとんど造られていない。
手作業では、エクセルファイルの読み込みは出来るよう設計したものはある(年賀状ソフトの住所録など)
ーー
コピーペをプログラムで使えるか調べる
ーー
ソフトの上に立って、動かすソフトがある。
uwscなどGoogleで情報を仕入れて、勉強してみる。
ーー
画面連携ソフト。
画面に打ち込んだデータ、画面に他のデータからデータをセットできるソフト、画面に表示されたデータを捉えるソフトがあると、他ソフトと連携し自動実行出来る可能性が在る。しかしソフト例を知らない。
ーー
ソフトは原理的に何でもできる。しかし自分がやれ(プログラムを造れない。作るにはウインドウズの仕組みレベルまで知る必要が在る場合も多い)なければ作られたソフトを探すしかない。
しかしソフトは基本的に大衆性=販売して儲かるか、を念頭に製作・販売・公開される。この点から特殊なニーズや断片的なニーズは商品化できない。よっぽど自分が勉強するか、全世界に同好の人・記事を見つけるしかない。しかし全てWEBに公開しているとは言えず、語学力も必要で難しい。
No.1
- 回答日時:
>業務効率を上げるために、VBAでエクセル内の情報を他のアプリケーションに自動入力させたいです。
>入力する情報は、複数の項目があり、固定されています。
>できれば、ワンクリックですべての入力フォームに自動入力させたいです。
「他のアプリケーション」によって、VBA初心者でできることからプロに依頼しなければできないものまで、多様な対応方法がありえます。
まず「他のアプリケーション」をどのようにコントロールできるか確認してください。
「他のアプリケーション」の1画面で貼り付け操作をすることで「全ての項目のデータ」が貼り付けられるなら、エクセルでシートを調整して必要範囲をコピーの後「他のアプリケーション」をアクティブにして貼り付ければ実現できるかもれません。
あるいは「一項目ごと」にエクセルと「他のアプリケーション」を往復する必要があるかもしれません。
もしかしたら、「他のアプリケーション」の動作を受けてからでないと次の作業ができないかもしれません。
「他のアプリケーション」にマクロ機能があれば、エクセルから「他のアプリケーション」のマクロを書き出すことができるかもしれません。
私は企業で事務作業しているだけの者なのでこの程度しか例示できませんが、「他のアプリケーション」だけでは他者には伝わらないことを理解してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルVBAで図形のテキストを取得してセルに入力 2 2022/10/05 23:09
- その他(Microsoft Office) 1の行を固定した上でVBAを用いて日付順に自動並べ替え 2 2022/06/06 15:09
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Visual Basic(VBA) エクセルVBAについて 2 2023/01/31 16:21
- JavaScript javascript で外部サイトにデータ入力させて自動でボタンを押すことは可能ですか? 1 2023/01/30 16:23
- Excel(エクセル) 【エクセル」 特定のセルで条件抽出した列を、別シートに上から詰めて表示したい。 8 2022/04/08 16:00
- Excel(エクセル) エクセルでcsvファイルを開いてVBAを使いたい 7 2022/04/28 11:12
- Excel(エクセル) エクセル VBA実行中のApplication.ScreenUpdatingについて 3 2023/07/13 21:06
- Visual Basic(VBA) tatsumaru77様 昨日回答して頂いたものです。 すみませんが、昨日の質問で1つ補足があります 1 2022/05/15 15:06
このQ&Aを見た人はこんなQ&Aも見ています
-
「環境が人を育てる」って本当?環境によって人格や生き方は本当に変わるのか
環境が人生に与える影響は実際どれほどのものなのか、専門家の田宮由美さんに伺った。
-
Excel VBAで他アプリへのテキストデータ貼り付け
Excel(エクセル)
-
別のアプリケーションのテキストフィールドに入力する方法
Visual Basic(VBA)
-
VBAで既に開いている別アプリケーションのオブジェクトを得る
Visual Basic(VBA)
-
-
4
Excel VBAで他アプリケーションの文字列取得
Excel(エクセル)
-
5
EXCEL VBA 他のアプリケーションからの自動貼り付け
Visual Basic(VBA)
-
6
エクセルのマクロで他のシステムを動かせますか?
その他(ソフトウェア)
-
7
VBAでの SendKeysの変数指定方法
Excel(エクセル)
-
8
vbaから他のアプリを終了
Visual Basic(VBA)
-
9
EXCEL VBAから他アプリケーションを操作することは可能ですか?
Visual Basic(VBA)
-
10
ExcelVBAでスペースキー操作したい
Excel(エクセル)
-
11
ExcelVBAでAPIを使って外部ウインドウのエディットテキストを取得する方法
Visual Basic(VBA)
-
12
指定のWORKBOOKを前面表示する方法(エクセル:VBA)
Excel(エクセル)
-
13
エクセル VBA SendKeys ループ処理について
Excel(エクセル)
-
14
起動中のアプリ、ソフトの取得
Visual Basic(VBA)
-
15
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
16
WSH or VBの質問
Visual Basic(VBA)
-
17
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
18
他アプリケーション’(ウィンドウ)のハンドル取得方法
Visual Basic(VBA)
-
19
VBAで、なぜかSendkeyが効きません。
PowerPoint(パワーポイント)
-
20
exeファイルの中身を見ることは可能ですか?
フリーソフト
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
WinからMacにエクセルのデータ送信
-
【漢字】上丸の出し方を教えて...
-
中が黄の広をexcelに打ち込む方...
-
「 ' 」(上カンマ)が表示し...
-
ワード、ルーラー操作ができない
-
写真に日付を入れるのがそんな...
-
エクセル true false どういう...
-
CPRM Keyの認証方法を教えてく...
-
「1日~10日まで」のような...
-
こお言う場合、こう言う場合・...
-
漢字の入力方法
-
英語におけるローマ数字の読み...
-
40字×30行ってどうやって設...
-
キーボード入力
-
自分だけの辞書が作れるフリー...
-
サンダーバードでシングルクリ...
-
MacBookのページズで一行30 1ペ...
-
Win10 画像のサムネイル表示が...
-
フロッピーディスクをパソコン...
-
【Excel】郵便番号を入力し、隣...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでエクセル内の情報を他のア...
-
WinからMacにエクセルのデータ送信
-
フォトショップとイラストレー...
-
簡単なリストなどを作るソフトは?
-
CDテキスト情報を表示してくれ...
-
パソコンで、日記や読書ノート...
-
パソコンで育児日記をつけるこ...
-
オムニアウトライナーに近いWin...
-
ポスター、フライヤーを作りた...
-
synth1のmidiコンへの割り当て...
-
OCR機能付のPDF閲覧iPadアプリ...
-
Directorとは?
-
PC素人ですが、名簿作成できる...
-
JANコードの数字の管理ソフトの...
-
白地図を読み込んで、タグ付け...
-
AutoCAD初心者にお勧めの本を教...
-
富士通ムービーライターを使っ...
-
EPSON GPS ロカティ が CF...
-
LightWave初心者です。
-
エクセルの住所データを地図に...
おすすめ情報