2022.8.9 

エクセルマクロ(EXCEL VBA) その16 表を整理してメアドリストを作る



舞台・演劇の制作業務はなるべく自動化してパソコンにやってもらおう企画

 

アンケートフォームの結果から、メールアドレスリストを作ろう

 

公演でアンケートを取って、メールアドレスを収集して、次の公演の時にアドレスリストを使うということは、多くの劇団でやっている作業だと思います。
アンケートフォームからCSVをダウンロードしたらこうなっていたとします。
このCSVをダウンロードする

アンケートの結果

このアンケートの表を使って、氏名とメールアドレスだけのリストを作ってみましょう。
ただし、メールアドレスリストには、メルマガの列が「はい」になっている人だけをリストに入れたいということにします。
また、同じメールは2つ要らないので、一人につき一つのメールアドレスがあれば事足ります。

では、一つずつマクロを書いていきましょう。

シートをコピー

大事なフォームの結果が失われてしまわないように、まずはシートをコピーします。

開発→Visual Basic
挿入→標準モジュール として、

Sub address_seiri()

End Sub

としましょう。

プロシージャを作る

続いてシートをコピーします。
なお、シートの複製(コピー)のやり方はその14でやりましたので、ご参照ください。

その時は、シートの名前を指定していましたが、今回は今いるシートということでやってみましょう。
今いるシートをActiveSheetと呼ぶので、
今いるシート(ActiveSheet)の後ろに、新しいシートを作るには、

ActiveSheet.Copy after:=ActiveSheet

とすれば良さそうです。

シートをコピー

もちろん、シートの名前(address_seiri)を指定して、

Sheets("address_seiri").Copy after:=Sheets("address_seiri")

としても大丈夫です。

続いて、シートの名前を付けておきましょう。

シートのコピーを行った直後は、【コピー後のシート】がアクティブになるので、resultという名前を付けるには

ActiveSheet.Name = "result"

と書きましょう。

シートに名前を付ける

これを実行すると

コピーしたシートに名前を付けた

resultというシート名を付けることができました。

 

不要な行を削除

では次に、不要な行を削除していきましょう。
今回「不要な行」は、メルマガの列で「いいえ」と答えている人です。
つまりメルマガは要らないとアンケートで答えた人に、メールを送るわけにいかないので削除しようということですね。
このことをマクロちゃんに伝えるためにはどうすればよいでしょうか?

 
Ifを使えば良さそうですね。
・・・もし「いいえ」だったらその行を削除する

というのをマクロで表現していきましょう。

例としてD3の「いいえ」を狙ってみましょう。
D3はCellsで表現するとCells(3, 4)で、
3行目はRows(3)なので、

If Cells(3, 4) = "いいえ" Then
    Rows(3).Delete
End If

とすれば良いですね。

※Ifについてはその7、行の削除についてはその15をご参照ください。

いいえだったらその行を削除

この時、コピーしてできたresultシートを一度削除してから、マクロを実行してください。
そのまま実行するとエラーが出るはずです。

いいえが消えた

3行目の「いいえ」の行を消すことができました。
良さそうなので、2行目から8行目まで繰り返しましょう。
繰り返すにはおなじみのFor Nextを使います。

今書いたIf文をFor Nextで挟みます。
さっきは3だったところが変化する部分なので、iで置き換えて、i = 2 To 8 としてみましょう。

For Nextで挟む

これを実行すると

いいえが残ってしまった

残念ながら「いいえ」が残ってしまいました・・・。
何故でしょう。

 
実は、「いいえ」を見つけたら行を削除ということ繰り返しているため「いいえ」が連続していると、その行を見逃してしまうということなんですね。盲点でした・・・。

これを解決するために簡単な方法としては、上から順に作業するのではなくて、下から順に作業するというやり方が良いそうです。

i = 8 To 2 に変えて、さらに Step -1 というのを書き足してください。
これはStep -1というので、1ずつ数字を下げていくという命令です。
なので、8, 7, 6, ・・・, 3, 2という順で実行されるということですね。

後ろから実行

これを実行すると

うまく「いいえ」を削除できた!

うまく「いいえ」のあった行を削除できました!

 

重複を削除

次に、よく見ると吉宗さんのアドレスが重複しています。
劇団のファンほど、何度も来て、毎回アンケートを書いてくださいます。ただアドレスは重複してもしょうがないので、重複しているアドレスは削除しましょう。

エクセルにはもともと「重複の削除」ができる RemoveDuplicates というコマンドがあるのでこれを使います。
重複を確認したいのは、メールアドレスが書いてあるC列(3列目)なので

Cells.RemoveDuplicates (3)

と書きます。
Cellsは、このシート全体 という意味です。

このコードを追加して実行すると、

メールアドレスの重複を削除できた

メールアドレスの重複を削除できました!

 

不要な列を削除

最後に不要な列を削除していきましょう。
氏名とアドレスだけ残したいので、B列、D~F列は削除したいですね。

先程の反省を生かして、D~F列を先に削除しましょう。

Columns("D:F").Delete
Columns("B").Delete

と書きます。

カラムを削除

複数の列を削除するときは、こんな風に書きます。複数行の削除の時は番号だったんですが、列はアルファベットじゃないとうまく行かないようですのでご注意ください。

これを実行すると

名前とメールアドレスだけになった

うまく名前とメールアドレスだけにすることができました。

最終的なマクロの内容はこんな感じです。

表の整理マクロ

アンケートフォームの結果はカンパニーによって異なると思うので、ご自分の環境でメールアドレスを整理するシステムを作ってみてください。

 
今回の最終的なコード

Sub address_seiri()
ActiveSheet.Copy after:=ActiveSheet
ActiveSheet.Name = "result"

For i = 8 To 2 Step -1
If Cells(i, 4) = "いいえ" Then
    Rows(i).Delete
End If
Next

Cells.RemoveDuplicates (3)

Columns("D:F").Delete
Columns("B").Delete

End Sub

 

宿題-16
演出家はとても繊細な人で、「僕は酷いアンケートは読みたくない!」と言っているとします。
それが彼のためになるかどうかはさて置き、評価が6以上のものだけに絞り、「アンケート」「評価」だけを読めるように整理してください。
 

▼ クリックで解説を表示

 


もくじ(エクセルマクロ EXCEL VBA)

  

演劇の制作さんへ

→ 他にどんな作業ができたら便利か思いついたらぜひ教えてください!(うまく実現できるかわからないけど・・・。)
http://entre-news.jp/contact
 

 
(文:森脇孝/エントレ)

 

最近の記事

ミュージカル ジョジョの奇妙な冒険 ファントムブラッド
長谷川寧が演出 ミュージカル『ジョジョの奇妙な冒険 ファントムブラッド』2024年2月に帝国劇場で上演
ブロードウェイ・ミュージカル『トッツィー』
山崎育三郎がドロシー・マイケルズ役で出演 ブロードウェイ・ミュージカル『トッツィー』2024年1月から日生劇場ほかで上演
GANMI×宝塚歌劇OG DANCE LIVE『2STEP』
客席も立って騒いで GANMI×宝塚歌劇OG DANCE LIVE『2STEP』に沸き立つ会場/東京公演が開幕
公演中 05月26日(金) 〜 06月04日(日)
東京芸術劇場 Presents 木ノ下歌舞伎『勧進帳』
人気演目 5年振りの再演 東京芸術劇場 Presents 木ノ下歌舞伎『勧進帳』9月1日から東京芸術劇場 シアターイーストほか各地で上演
公演日程 09月01日(金) 〜 11月05日(日)
『俺たちのBANG!!! ~大劇場を占拠せよ~』
芝居と迫力のパフォーマンスで劇場を席巻!少年忍者・初単独公演『俺たちのBANG!!! ~大劇場を占拠せよ~』観劇レビュー
公演中 05月06日(土) 〜 06月17日(土)
『BACKBEAT』撮影:岡千里
戸塚祥太、加藤和樹らが出演 ビートルズ創成期の青春物語を描いた『BACKBEAT』東京公演が5月24日(水)に東京建物 Brillia HALLで開幕
公演終了 04月23日(日) 〜 05月31日(水)
ゲキ×シネ『薔薇とサムライ2 -海賊女王の帰還-』8月4日(金)から映画館で全国公開
古田新太・天海祐希 ゲキ×シネ『薔薇とサムライ2−海賊女王の帰還−』8月4日(金)から映画館で全国公開/この冬 Blu-rayが発売
演劇グッズ専門店「観劇三昧ラボ」
演劇グッズ専門店『観劇三昧ラボ』が5月13日(土)から下北沢でオープン
骸骨ストリッパー『RAIKA』
【予告動画あり】脚本・NON STYLE 石田明 歌とダンスとアクション満載の超古代マンガ活劇! 骸骨ストリッパー『RAIKA』5月25日(木)から新宿・スペース・ゼロで上演
公演終了 05月25日(木) 〜 05月28日(日)
CCCreation Presents舞台『桜姫東文章』
欲望と裏切り、悪意と偶然が狂い咲く! 三浦涼介、鳥越裕貴、平野良らの出演舞台『桜姫東文章』が5月3日にスペース・ゼロで開幕/上演は5月10日まで
公演終了 05月03日(水) 〜 05月10日(水)
KOKAMI@network vol.19 『ウィングレス(wingless)ー翼を持たぬ天使ー』
翼を捨てた元天使が人間を救う戦いに挑む 福田悠太主演 KOKAMI@network vol.19 『ウィングレス(wingless)ー翼を持たぬ天使ー』がサザンシアターで開幕
公演終了 05月01日(月) 〜 05月28日(日)
パフォーマンスユニットTWT『SANADA XI』
真田十勇士を描いた青春群像時代劇に荒井敦史、黒澤美澪奈、水原ゆき、丸山敦史らが参加 パフォーマンスユニットTWT『SANADA XI』6月9日から吉祥寺シアターで上演
もうすぐ 06月09日(金) 〜 06月18日(日)
劇団チャリT企画「Wの非劇」チラシ画像
スキャンダルに揺れる芸能事務所を舞台に複雑な人間模様を描いた痛快悲喜劇 劇団チャリT企画『Wの非劇』下北沢 駅前劇場にて5月17日から上演
公演終了 05月17日(水) 〜 05月21日(日)
せたがやこどもプロジェクト2023『メルセデス・アイス MERCEDES ICE』
「子どもたちに劇場空間を存分に感じてほしい」18歳以下の観客を無料招待/せたがやこどもプロジェクト2023『メルセデス・アイス MERCEDES ICE』8月11日から世田谷パブリックシアターで上演
公演日程 08月11日(金) 〜 08月20日(日)
左から演出・丸尾丸一郎(劇団鹿殺し)、鳥越裕貴、井坂郁巳
脚本・加納幸和(花組芝居)、演出・丸尾丸一郎(劇団鹿殺し) 原作・鶴屋南北 舞台『桜姫東文章』 丸尾丸一郎・鳥越裕貴・井坂郁巳インタビュー
公演終了 05月03日(水) 〜 05月10日(水)
キノG-7公演no.5『満ちる』
映画監督の父と娘の愛憎を描く 竹内銃一郎の演劇企画 キノG-7公演no.5『満ちる』5月11日からTHEATRE E9 KYOTOにて上演
公演終了 05月11日(木) 〜 05月15日(月)
舞台『GISKE-ギスケ-』
日産コンツェルン総帥・鮎川義介の激動の生涯を描く 舞台『GISKE-ギスケ- アルプス山脈の見果てぬ夢』5月18日から恵比寿・シアター・アルファ東京で上演
公演終了 05月18日(木) 〜 05月22日(月)
『エンジェルス・イン・アメリカ』撮影: 宮川舞子
舞台『エンジェルス・イン・アメリカ』第一部「ミレニアム迫る」が新国立劇場 小劇場で開幕
公演中 04月18日(火) 〜 06月10日(土)
『関西演劇祭2023』
11月に大阪で開催される つながる演劇祭『関西演劇祭2023』 出演団体の二次募集が開始/締め切りは5月8日
帝国劇場『Endless SHOCK Eternal』
世界でも類を見ない2作同時上演に挑む 作・構成・演出・主演 堂本光一『Endless SHOCK』『Endless SHOCK -Eternal-』が帝国劇場で上演中
公演終了 04月09日(日) 〜 05月31日(水)
『滝沢歌舞伎ZERO FINAL』
18年間の集大成!Snow Man主演・演出の舞台『滝沢歌舞伎ZERO FINAL』観劇レビュー
公演終了 04月08日(土) 〜 04月30日(日)
リーディング音楽劇『ジャングル大帝』
福田悠太、辰巳雄大、越岡裕貴、松崎祐介がレオ役で出演 リーディング音楽劇『ジャングル大帝』6月4日、5日に東京建物 Brillia HALLで上演
もうすぐ 06月04日(日) 〜 06月05日(月)
『ドクター皆川~手術成功5秒前~』
皆川猿時×荒川良々の最強タッグ! 生と死の重みがまったくない医療コメディ『ドクター皆川~手術成功5秒前~』10月12日(木)から本多劇場で上演
公演日程 10月12日(木) 〜 10月29日(日)
『滝沢歌舞伎ZERO FINAL』
9人の汗の結晶 ― Snow Man初演出『滝沢歌舞伎ZERO FINAL』開幕/4月19日からはライブビューイングも
公演終了 04月08日(土) 〜 04月30日(日)
劇団☆新感線『ミナト町純情オセロ~月がとっても慕情篇~』ポスタービジュアル
特典映像は三宅健らのキャスト座談会! 劇団☆新感線『ミナト町純情オセロ~月がとっても慕情篇~』Blu-rayが11月28日に発売/4月13日から予約受付スタート
公演終了 03月10日(金) 〜 05月01日(月)
俳優に“相手に反応する”ということを一番に求めたい 演出家鈴木裕美による俳優のためのワークショップ
俳優に“相手に反応する”ということを一番に求めたい 演出家・鈴木裕美による俳優のためのワークショップ/エントリーの締切は4月16日(日)
公演終了 05月06日(土) 〜 05月14日(日)
ミュージカル『サンキュー・ベリー・ストロベリー』撮影:SCOPE/齋藤清貴
真弓孟之 舞台初主演ミュージカル『サンキュー・ベリー・ストロベリー』4月5日に東京芸術劇場シアターイーストで開幕
公演終了 04月05日(水) 〜 04月30日(日)
歌舞伎町劇場が2023年10月にオープン
次世代型の大衆演劇場・歌舞伎町劇場が2023年10月にオープン 豪華劇団がそろい踏み公演ラインナップが明らかに
オペラ「アイーダ」(c)田中亜紀
数々の舞台衣裳を目の前で楽しめる 初台アート・ロフト『時空をこえて-Across Time and Space-展』が4月5日から新国立劇場オープンスペースで無料開催
公演中 04月05日(水) 〜 08月31日(木)
舞台『ブレイキング・ザ・コード』
亀田佳明、水田航生、岡本玲らが出演 稲葉賀恵 演出舞台『ブレイキング・ザ・コード』が4月1日(土)にシアタートラムで開幕/上演は23日(日)まで
公演終了 04月01日(土) 〜 04月23日(日)

 ≫もっと見る
 

編集部ピックアップ!

エントレがおすすめする他の舞台



Copyright 2023 Village Inc.