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

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

新規登録して質問してみよう
ただいま回答率
85.50%
VBA

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

Q&A

22回答

5329閲覧

Excel VBA 何に使ってる?

退会済みユーザー

退会済みユーザー

総合スコア0

VBA

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

2グッド

1クリップ

投稿2016/06/14 12:56

業務でも趣味でも何でも構いませんが、VBAをどのような用途で使用していますか?

退会済みユーザー👍を押しています

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

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

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

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

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

guest

回答22

0

私はプログラマですが、VBAで作ったものが成果物になるということは「ほぼ」ありません。
なので、使うとすれば、自分の作業の効率化のためのちょっとしたツールを作る時くらいです。
あとはteratailでVBAの質問の回答を模索するときですかね:-)

投稿2016/06/15 00:09

ttyp03

総合スコア16996

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

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

退会済みユーザー

退会済みユーザー

2016/06/15 06:24

ご回答ありがとうございます
guest

0

会社にもよりますが、私が作ったものでは工数管理等のデータを管理できる視覚化できるものをつくっています。
そもそもExcelは表なのでデータ等管理だったり閲覧するにはもってこいだと思っているので、
そこそこ活用しています。
余談ですが、私は作ってはいないのですが、知人がAccessとExcel VBAを利用して顧客の管理をできるものを作成していました。
ぶっとんだ人はVBAでゲーム作ったりOSを作ったていう人もいるみたいですね。

投稿2016/06/15 02:06

dacchi2000

総合スコア27

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

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

退会済みユーザー

退会済みユーザー

2016/06/15 06:25

ご回答ありがとうございます
guest

0

社内SEしてますが、うちの会社では結構Excel VBA使ってますよ。

用途としては
・システム間でのインタフェース用のデータ作成
・客先からのデータをExcelへ自動取込する
・小規模な業務システム
等ですね。
Officeのバージョン違いやどれくらいの規模の開発をExcelでするのか等、賛否両論あるとは思いますが、
私は手軽に処理ができるようになるのであれば、Excel VBAでのシステム開発もありだと思います。
OfficeはどのPCにもほぼ入っていると思うので。

投稿2016/06/15 01:25

tomo.ina

総合スコア357

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

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

退会済みユーザー

退会済みユーザー

2016/06/15 06:24

ご回答ありがとうございます
guest

0

VBAはEXCELの処理の自動化という使い方が一般的ですが、EXCELとはまったく関係ない使い方もできるので便利です。
フォームも使えるので簡単なツールとして使えます。
本格的な開発環境を入れなくてもすみますから。

投稿2016/06/14 14:09

yoshi777

総合スコア674

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

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

退会済みユーザー

退会済みユーザー

2016/06/14 20:21

ご回答ありがとうございます。
guest

0

お客様の要望に応えて作ったことがあります。
・帳票出力
・ハードウェア故障率調査グラフ(MTBF)
・構造解析処理
など

使いづらいのが、開発するときにソースがそのエクセル内にしか保存できないため、何度か保存をキャンセルしてしまい痛い目によくあいます。

投稿2016/06/16 02:15

red_bb

総合スコア71

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

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

退会済みユーザー

退会済みユーザー

2016/06/16 02:16

ご回答ありがとうございます
guest

0

ExcelもVBも大好きなので、隙あらば何でもExcelでやりかねない私ですが。

業務上で使うとすれば、Excelに特化した機能が必要で、Excel関数では力不足な時(もしくは好ましくない時)、でしょうか。

例えば
・定型入力の一部分を自動入力させたいが、Excel関数では判断しきれない場合
・大量のテストデータを作りたいが、Excel関数だけでパターン化するのは難しい場合
・Excel上で一定の操作を繰り返し行う場合(マクロ登録)
といったときに使っています。

他にも
・設計書を作る傍らで、画面イメージを掲載するために簡単なダミーフォームを作ってスクリーンショットを取る
といった具合で、お手軽な開発ツールとして使ったりもしています。

いろいろあげてみましたが、最近ではここのVBA質問の回答に使用する頻度が一番高かったりするのですが(^-^;

投稿2016/06/15 00:31

jawa

総合スコア3013

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

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

退会済みユーザー

退会済みユーザー

2016/06/15 06:24

ご回答ありがとうございます
guest

0

ユニークな使い方の人ばかりですが、私はもっぱら大量のエクセルデータを編集するときに使いますね。普通にエクセルを使う業務の効率化ばかりです。他のことはrubyとかの他の言語で済ませてしまうのでVBAを選ぶことはないですね。

投稿2016/06/14 14:49

oskbt

総合スコア1895

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

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

退会済みユーザー

退会済みユーザー

2016/06/14 20:21

ご回答ありがとうございます。
guest

0

IBMのホストのSEだったので、主にホストの端末をAPIで自動化するのに使ってました。

端末エミュレータは20×40文字程度の表示しかできなかった、更にJCLという罵詈雑言・悪態の限界に挑戦出来る言語と格闘していたので、端末エミュレータのAPIでコントロールして快適なCOBOL開発環境を手に入れていました。

・ソースコードをファイル化してFTPかけたり、ファイル化して作成したソースコードFTPで送信しました。
・ビルドとビルド結果の収集をしました
・簡単なJCLなら自動生成しました。
・個人データの保存領域が128Kだったかくらいしか無いので、テストデータとテスト実行JCLをPCから投入できるようにしました。
・テストの自動実行と結果の送信を自動化しました。
・繰り返し項目がある固定長データ(数百バイト)の特定の項目の位置を計算するのにオブジェクト指向を憶えました
・画面操作をするスクリプトを作り、ExcelでDBとホストのマッシュアップをしました。

ホストからすると、VBAはなんと自由なことか!
そのままいたら、JCLを生成するDSLを作っていたことでしょう。

他には、フォトショの加工を自動化したり、
環境設定なしに実行出来るので、VBAは便利だったと記憶しています。

投稿2016/06/14 14:05

iwamoto_takaaki

総合スコア2883

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

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

退会済みユーザー

退会済みユーザー

2016/06/14 20:21

ご回答ありがとうございます。
guest

0

仕事ではもちろん色々使ってますが、それ以外の用途で使ってたのを紹介します(紹介ほどのことではないけど)。

今はやってないのですが、ある職場で休憩時間に缶ジュースをくじで負けた人が全員の分を自腹で買ってくるというのをやってました。(つまり参加者に奢ってあげるというルールです。もちろん飲みたいものは指定できますが100円の物に限ります。当時会社の自販機の缶ジュースは100円でした。)

そのくじにVBAを使ってるのですが、単なるくじ引きじゃ面白くないので、3桁の数字をランダムで表示させ、その数字の各桁を足し合わせたもの(足して2桁になったら更にその2桁を足す。例えば出た数字が「385」なら「7」になります)でまず自分の数字を決めます。次に最初に出た1桁の数字の一番小さい数字の人が最後のくじをもう一度引いて出た1桁の数字が負けた人になります。
ゾロ目とかのルールもありました。ちょっとややこしくて、最初の自分の数字決めの時は勝ちが確定で、最後に負けを決めるくじを引く時にゾロ目が出た時は、そのゾロ目を出した人が買ってこなくてはいけないのは変わらないけど、ジュース代は各人からもらうとなってました。

でさらにくじで負けた人は100円を貯金箱に入れます。その貯めたお金は年末にジャンボ宝くじを貯まった金額でできるだけ購入(共同購入)し、当選金は参加者に分配するシステムになってました。(ただし、少額当選の場合は次回の共同購入にまわす)

分配も参加率や勝敗率で計算するようになっていて、一番多く負けた人が一番多くもらえるようになってました。
自腹を切った分(100円の貯金分は入れない)をExcelの表に入力します。勝った人は「100/参加人数」を加算、負けた人は勝った人の合計分をマイナスで入力します。1日1カラム使って入力するのですが(縦軸に参加者の名前が書かれていて横軸はカレンダーの日付になっています)、その日の合計が必ず0になるようにするのです。

で、今までのトータルで自分がどれだけの損得したかを棒グラフで並べて表示していました。

また、3億当たった時の分配金が各人のところに表示されていて、「取らぬ狸の皮算用」ができるようにもなってました(笑)。

ただ、VBAはくじの部分だけで、シートへの記入は手入力で合計などはセルの計算式でやってましたけどね。

私が考えたVBAではなかったのですが、楽しくできるように色々と考えてありましたね。

ちなみに、私は分配金をもらったことは無いです(笑)。(つまり高額当選はなかったということ)

投稿2017/03/23 01:12

PineMatsu

総合スコア3579

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

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

0

私は、WBSで利用しています。
進捗線を引いたり、個々のタスクにスケジュール線を引いたり・・・
タスク数が多くなると重くなってしまいますが、メンバにも使って貰えてます。

投稿2017/03/15 08:40

kurataku_ky

総合スコア65

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

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

0

社内SEなので、社内システムでフル活用です。
おかげさまで賞与は同期の1.5倍くらいもらってます。
具体的にはサーバーのDBから自動で帳票類やグラフ付きの報告書を作成してパワポに張り付けメール配信とか。もちろんタスクスケジューラで全自動です。
定期事務処理はほぼ自動化してます。
問題はソースコードの管理・・・(;´Д`)

趣味では、ゲーム作成してるので、ゲームデータの自動作成や、
バランス調整のシミュレータ作成、
MAP自動作成ツールとかも作ってます。

投稿2016/10/25 05:27

jm1156

総合スコア866

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

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

0

あまり活用していませんが、

エクセルを使いやすくしたり(*1)、データベース的なものを作成(*2)したりするときですかね。

*1 ( エクセルを使いやすくしたり ) は、
たとえば、
ブックに新規シートを追加して、セルの色づけをしたりするのが面倒なので、
関数化、サブルーチン化して

ボタンや ショートカットキーに割り振って、

ボタンひとつ ( または ショートカットキー で ) で 新規シート追加 + セルの設定等を自動化するとか。

*2 ( データベース的なもの ) は、
たとえば、エクセルの列は カラム ( "名前", "住所" etc. が記述されている部分 ) とし、
行は そのデータ ( "田中" - "東京都..." ... ) を入れる "レコード" として、

10行目を 1個目 とし 11行目 を 2個目 とし... という風に。
( 1-9行目は どういうデータベースかという記述等。 )

で、ユーザフォームで 任意の情報 ( 例: "田中" という苗字の人のデータ一覧 ) を取得し、
別のユーザフォームで結果を出力。

とか。

投稿2016/10/25 05:15

BeatStar

総合スコア4958

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

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

0

主に業務の効率改善に使用していました(大量データの処理や、日次・月次処理等)。
本当は、Excel方眼紙+大量の関数詰め合わせという「典型的な」物に
ついてもマクロ化したかったんですが、時間を与えてくれないので…。

Excel-VBAは仕事としては極めてお金になりにくい言語ですが、それでも
極めれば役に立ちますよ?
(あとはVBAエキスパートの受験用とか…)

投稿2016/10/25 02:13

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

0

業務で主に使用しています。
例えば、エクセルの数式だけでは満足できない場合や、それを帳票で出力する場合など。
お客も、エクセルが使い慣れていたりするので、簡単な修正も自分でできることがうけています。

投稿2016/10/20 04:07

red_bb

総合スコア71

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

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

0

業務で主に使用しています。
・WBS
・初期データ作成
で主にマクロを使用しています。

投稿2016/06/25 07:27

XYZA

総合スコア20

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

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

0

office365 はご存知でしょうか?
単純にクラウド化されたOfficeだと思って頂ければ
よいと思います。

office365 のExcelで作成したツールなら、
どんな端末(PC,IOS,タブレット)でアクセスが可能といってましたので、
それと現状の
・集計データ纏め資料作成
・店舗売上データ集計
・自社請求システムのインポート用ファイル作成
上記3点のようなツールを使えるようになれば、
用途も増えると思っております。

あくまで現状は業務用に使用しております。

投稿2016/06/24 03:56

YK1037

総合スコア236

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

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

退会済みユーザー

退会済みユーザー

2016/06/24 17:26

VBAは使えないような!?
guest

0

作ったモジュールを現場の大量の端末に配る時に、OSによって放り込むディレクトリを変えるようなものをVBAで作りました。が、配布システムにウィルス扱いされて終わりました。。。

投稿2016/06/23 00:59

TG1

総合スコア10

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

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

0

社内でのデータ処理などのツールとしての用途が多いですね。
データを表で表示したい時は楽ですから。

投稿2016/06/21 09:27

PineMatsu

総合スコア3579

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

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

0

現場TOOLですかね。
Windows感興ならソフトウェアのインストール等に制約があっても、たいていEXCELくらいは入っていますから。

投稿2016/06/15 06:21

ARADDIO

総合スコア160

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

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

退会済みユーザー

退会済みユーザー

2016/06/15 06:22

具体的に現場TOOLを説明していただけますか?
ARADDIO

2016/06/15 06:27

DBアクセスTOOLや、比較TOOLを作って使用していました。 あとは、フォーマットが決まりきったテストエビデンス作成支援TOOLとか。
guest

0

VBA⇒VB6(VS98のVB部分1998年ごろリリース)のサブセットな部分と、製品依存部分。
OFFICE製品毎に、製品依存部分の実装が異なるので、各製品のオブジェクトモデルの
理解が必要です。

社用PCなどで、新規アプリケーションインストール禁止などの縛りが有る場合に、
共通のプラットフォームとして使用できます。
但し、VBAの x86 / x64 での互換性には注意が必要。
⇒現在では、WEB系システムの方が優位。
古くから、EXCEL VBA ゲーム というジャンルがあったり。
EXCEL VBA で、大まかにVBS の動作を確認をしたり。

投稿2016/06/14 22:43

daive

総合スコア2028

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

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

退会済みユーザー

退会済みユーザー

2016/06/15 06:23

ご回答ありがとうございます
guest

0

いまならWebブラウザを使うところでしょうが…
VBAで画面つくってDBにアクセスしてデータもってきて
加工して表示、みたいなことやってたのありました。

あと、OLEで引っ張ってきたリアルタイムデータを
自分の業務に合わせて加工したりしてた人もいたなあ。

投稿2016/06/14 15:25

takasima20

総合スコア7458

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

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

退会済みユーザー

退会済みユーザー

2016/06/14 20:21

ご回答ありがとうございます。
guest

0

スクリーンキャプチャを取って、並べるのに使ったこがあります。
他には単体テストの仕様書を作るのに使ったりしました。

投稿2016/06/14 13:00

yona

総合スコア18155

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

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

退会済みユーザー

退会済みユーザー

2016/06/14 13:01

ご回答ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

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

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

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問