Twitter上で、VBAを教える流れになっていたようで・・・!?
ざっくり解説です。
成績データをもとに1人ずつのpdfファイルを作成するみたいですね。
第六回課題
VBA
VBA(Visual Basic for Applications)とは、まぁ、あれですね・・・Excelでプログラミングする画面を出して、プログラミングするやつです。
課題?
・成績ファイル”datalist.xlsx”(400行)
・成績通知書.xlsm
を用意する必要がありそうですね。
講義通り、サンプルを入力し成功すると、saveフォルダ内にpdfファイルが400個作成されるみたいです。
できない・・・?
サンプルが実行できないとスタート地点にいけませんね、以下と比較してみては?
・以下のプログラムをどこに入力するの?
という疑問が出てきた人は、講義をみて、確認してみてくださいね。
※成績通知書.xlsmの「成績通知書作成」のボタンにマクロを入力することになります
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
Sub 四角形角を丸くする1_Click() Dim inputfilename As String '成績ファイル Dim Gakuseki(400) As String Dim Seiseki(400) As String Dim Outfile(400) As String Dim targetbook As Workbook Dim cellpoint As Integer Dim i As Integer inputfilename = Application.GetOpenFilename("Excelブック, *.xls?") If inputfilename = "False" Then Exit Sub Set targetbook = Workbooks.Open(inputfilename) With targetbook.ActiveSheet '400回繰り返す For i = 0 To 399 cellpoint = i + 3 '成績を取得する Gakuseki(i) = .Range("A" & cellpoint).Value Seiseki(i) = .Range("C" & cellpoint).Value 'saveフォルダに保存するPDFのファイルパスを作成する Outfile(i) = CurDir & "\save\" & .Range("A" & cellpoint).Value & ".pdf" Next End With 'bookを閉じる targetbook.Close '日付を入力する Cells(1, 4).Value = Date '400回繰り返してPDFを作る For i = 0 To 399 '成績を入力する Cells(4, 2).Value = Gakuseki(i) Cells(4, 4).Value = Seiseki(i) 'PDFを作成する ActiveSheet.Range("A1:D5").ExportAsFixedFormat Type:=xlTypePDF, Filename:=Outfile(i) Next '完了(自分用) MsgBox ("done") End Sub |
動かし方
・成績通知書.xlsmを開く
・「成績通知書作成」ボタンを押す
・出てきたダイアログから、datalist.xls(xlsx)を選択
・少し待つとsaveフォルダ内に、400個のpdfファイルができる
課題
工夫
色々考えられますね。1つ、なにかやってみては?
- 400人ではなく、500人それ以上に対応してみる
- 成績の平均を出してみる
- 不合格の人数を表示してみる
- 成績の文字の色を変えてみる
レポートはパワポとかpdfで出してみてね。
まとめ
- 課題の紹介でした
- VBAの講義サンプルらしきものを記載しました
- 課題アイディアを記載しました
- 頑張って下さい
凄く助かりました。ありがとうございます。
情報マネジメント戦略Ⅱ 第7回のjsファイル読み込んでグラフ作成のところ
解説してもらえたらありがたいです。
公開されているサンプルがそもそも動作しないので何ともしがたい。
忙しいと思いますけれど、ぜひお願いしたいです。
公開されているサンプルとは…?
講義の内容でしょうか?
htmlファイルは、今回の記事のものをそのままコピペしたらサンプルとして動きそうですが、いかがでしょう?
あ、すみません。勘違いしていました。
第七回の記事をちょうど作成したところなので、ぜひご覧ください。