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

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

ただいまの
回答率

88.04%

Excelでこんなマクロ組めますか???

解決済

回答 5

投稿

  • 評価
  • クリップ 0
  • VIEW 8,478

score 33

初心者です。
下記のようなマクロ作成できますか??
どなたか助けてください。

Excelの申請用紙のファイルがあり、そこに申請というボタンを設け、そのボタンを押すと、あらかじめ指定したアドレスにメールが送られ、
そのメールが送られてきた人は申請内容を見て、承認するなら承認ボタン・承認しないなら、承認しない みたいなボタンがあり、それを押す。
その結果を集計してメールが送られてきた、人や申請者が確認できるようなマクロってできませんか??

確認方法は、
申請ファイルの別シートに
氏名 部署 承認
みたいになればいいです。

宜しくお願い致します。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • yukihisa

    2018/08/30 16:34 編集

    ひとつのブックで申請⇒承認、集計と言う形でしょうか。それとも全部分けるのでしょうか?申請承認をまとめて集計は別なのでしょうか。そしてDBに登録するのかブックにそのまま書くのかなど、やりたいことに対するアプローチが多岐に渡りすぎてなんとも言えません。こうしたらできる、と言っても「その環境がない」とかなってしまう気がします。とりあえずエクセルのみでは無理、というか運用できないです。そしてプログラミング初心者という質問がちょうど2年前です。3年目にもなって初心者はちょっと通用しないと思います。。。

    キャンセル

  • kotodama

    2018/08/30 16:41

    申し訳ございません。全部1つのExcelファイルでやりたかったですけど、無理ですよね

    キャンセル

  • yukihisa

    2018/08/30 16:47 編集

    それだとボタンが誰にでも押せちゃいますけど権限とかきっちり設定できますか?そもそも集計するのにひとつのブックじゃ運用できないですよ。申請、承認、集計時に常に「マスターブック」を回さなきゃいけなくなってしまいます。承認結果を見るにも全部同じブックだったら見てはいけない人が見てしまったりとか、その辺りのセキュリティとかもがばがばになりますよ。

    キャンセル

回答 5

+1

申請ボタンを押したら指定メールアドレスにファイル添付したメールを送信

これはがんばればできます
参考:CDOでメール送信

メール受信者が添付ファイルの内容を見て、承認する/しないのボタンを押す

これは割と簡単です

その結果を集計して

ここでハードルがぐっと上がります

誰がどのように集計しますか?
きっと何らかのデータベースが必要で、そこに入力し、何らかの方法でカウントすることになります
とてもエクセルファイル1つでどうにかできる話ではないです

例えば、1個のファイルを順繰りに送受していくなら、そのファイルに集計を蓄積していくことも可能かもしれません
しかし、お互いの信頼関係の中でうまく運用することが前提です

誰がいつ何をしたかを明確に、なりすましや改ざんができないように、といったレベルを求めるなら、エクセルなんてレベルでなくシステム1個作る規模になると思います

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/09/01 11:39

    ありがとうございます

    キャンセル

checkベストアンサー

0

お困りの点はExcelVBAからメールを送信する箇所でしょうか?
Excelが導入されているということから、Outlookをメーラとしてお使いでしたら、
以下のオブジェクトを使用することでメーラの操作が可能です。

Set outlookObj = CreateObject("Outlook.Application")

もちろんJavaScriptやVBScriptで記述することも可能です。

Set js = CreateObject("ScriptControl")

' 言語をJavaScriptに設定
js.Language = "JScript"

' SrciptControl.Evalを使用してメール送信をする関数オブジェクトを生成
Set func = js.Eval("function f(__arg) { ・・・ }; f;")

イメージとしては、簡易的な決裁システムのようなものでしょうか?
もしそうならば、いつ誰が承認したかといった情報を永続的に残す必要があるのではないかと推察します。
情報を永続的に残す場合にはやはりデータベースが必要となりますので、Excel+VBAで目的を満たせるかについては僭越ながら再考頂いた方が良いかと存じます。

もし、外見がExcelライクであればよいということでしたら、grapecityからwijimoというJavaScriptコントロールも出ています。
有償の製品ですが、試用も可能ですので参考にしてい

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

「承認ボタン」などはメールに付けるのでしょうか(違ったらお知らせください)。

メールにつけるボタン、だとしたら基本的にはHTTPのリンクになるわけですが、それで何か処理しようとすれば受け取るHTTPサーバ(もしくは、それに相当するようなサービス)が必要となります。Excelマクロだけでは実現できません。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/08/30 16:40

    回答ありがとうございます。
    ボタンはExcelファイル内でOKです

    キャンセル

0

OneDrive に置いて Excel Online のアンケートフォームを使うと良さそうです。

アンケートフォームをExcelで作成して集計する

ちなみに私の認識では、初心者とは自分で作り始めた人のことで、人に頼んで作ってもらう人は顧客と呼びます。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/09/01 11:39

    すみません

    キャンセル

0

これはExcel(VBA)で処理をすると云うより、むしろGoogleフォームでの解決をお勧めします。

問い合わせたい内容のアンケートを作成し、そのGoogleフォームのURLを対象者にメールし、Googleフォームにアクセスしてもらって回答して貰えば、必要な情報を全て回収し、尚且つ集計も自動で出来ます。

Googleフォームでのアンケート作成はとても簡単で誰にでも出来ますので、是非検索して簡単なアンケートを実際に作ってみることをお勧めします。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/09/01 11:38

    ありがとうございます

    キャンセル

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

  • ただいまの回答率 88.04%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る