PowerPoint プレゼンテーション

Similar documents
PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

[Excelが自動化するVBAの魔法2]購入者限定テキスト

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

Microsoft Word _VBAProg1.docx

情報基礎A

PowerPoint プレゼンテーション

VBM01#解答解説# indd

Microsoft Word - VBA基礎(3).docx

ExcelVBA


EXCEL VBA講座

1. 入力画面

Microsoft PowerPoint - VBA解説1.ppt [互換モード]

エクセルによる数値計算と化学への応用

PowerPoint プレゼンテーション

08‘͆i”O“Z†j

sinfI2005_VBA.doc

MS-ExcelVBA 基礎 (Visual Basic for Application)

教科書原稿

カレンダー講座メモ

JavaプログラミングⅠ

プレポスト【問題】

上の図がプロジェクトエクスプローラです 通常 VisualBasicEditor 画面の左上に配置されています Microsoft Excel Objects( ワークシート ) フォーム 標準モジュール クラスモジュールなどに分かれていて それらの集まりをプロジェクトといいます Excel のワー

Microsoft Word - VBA基礎(6).docx

C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ

Microsoft Word - VBA基礎(2).docx

94 expression True False expression FalseMSDN IsNumber WorksheetFunctionIsNumberexpression expression True Office support.office.com/ja-jp/ S

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

Microsoft PowerPoint - Visualプログラミング

VB実用⑦ エクセル操作Ⅰ

情報資源組織演習B:

第 1 章 VBA について 1 イントロダクション 校務で生徒や先生方のデータの集計など,Excel を使用することが多くなっています 日常,Excel で作業をしていると 同じ操作 を繰り返し行わなければいけないことが多くありませんか? この 同じ操作 を VBA を利用し, より業務を効率化さ

最初に VBA が使用できるように マクロ と呼ばれるエクセル上のアプリ ( のようなもの ) を準備します Excel メニューの ファイル オプション を選択 表示される Excel のオプション から リボンのユーザー設定 を選択 メインタブ 内の 開発 にチェックを付けて OK をクリック

PowerPoint プレゼンテーション

表紙

アプリケーション

pp2018-pp9base

ii

よくわかる Microsoft Excel 2019/2016/2013 マクロ/VBA(FPT1910)

本サンプル問題の著作権は日本商工会議所に帰属します また 本サンプル問題の無断転載 無断営利利用を厳禁します 本サンプル問題の内容や解答等に関するお問 い合わせは 受け付けておりませんので ご了承ください 日商プログラミング検定 STANDARD(VBA) サンプル問題 知識科目 第 1 問 ( 知

DAOの利用

コンピュータ概論

再利用して保存する場合は 新規登録 ボタン 1000 件まで登録できます 読み込んだ見積もりデータを 請求書に送るときは 請求へ複写 ボタン 2 請求書の作成 請求書 ボタンを押し 必要な項目を入力し 印刷 新規登録 ボタン data 読込 ボタンで作成済みデータを読みこめます 登録修正番号の数値の

PowerPoint プレゼンテーション

Microsoft Word - 206MSAccess2010

情報処理概論(第二日目)

コンピュータの構成

エクセル マクロ 言 語 とは エクセルのマクロとは 手 番 をあらかじめ 記 述 しておくことにより 通 常 手 操 作 している 処 理 を 自 動 化 すること 自 動 化 したものです マクロで 手 番 を 記 録 すれば 繰 り 返 し 作 業 を 自 動 化 できます また 連 続 的

PowerPoint プレゼンテーション

ExcelVBA Excel VBA Microsoft Excel VBA Visual Basic for Applications Excel Excel VBA ExcelVBA Excel ExcelVBA Excel VBA Excel ExcelVBA ExcelVBA VBA Ran

各種パスワードについて マイナンバー管理票では 3 種のパスワードを使用します (1) 読み取りパスワード Excel 機能の読み取りパスワードです 任意に設定可能です (2) 管理者パスワード マイナンバー管理表 の管理者のパスワードです 管理者パスワード はパスワードの流出を防ぐ目的で この操作

D0090.PDF

前回の内容 山形大学 OIRE の HP で公開している Power BI レポート 出身高校の所在地県別入学者数 ( 学校基本調査 ) の 2 ページ目と 6 ページ目を作成し Web を通じて共有することができる そのために必要なステップ 1. 公開データを入手 2. データ変

Microsoft Word - HowToConvertIdwToDwg.doc

Java KK-MAS チュートリアル

Excel2013 マクロ

Microsoft Word - VB.doc

Microsoft PowerPoint - vp演習課題

VBAfiüŒåŁÒver2

.NETプログラマー早期育成ドリル ~VB編 付録 文法早見表~

マクロの実行許可設定をする方法 Excel2010 で 2010 でマクロを有効にする方法について説明します 参考 URL:

D0020.PDF

ii Excel Excel IF IF IF VLOOKUP HLOOKUP IF VLOOKUP HLOOKUP ExcelVBA Excel Excel Excel Web p Excel Excel Excel

とします 後者は Excel 上の指定したセル範囲を R 上にデータフレームとして保存します たとえば セル A1 から B10 の範囲の値 ( 1 行目は変数名 それ以外はデータとする ) を R 上にデータフレーム mydf として保存するには Rinterface.PutDataframe m

プログラミング入門1

連立方程式の解法

ファイル操作-インターネットキャッシュ

Lesson 1 1 EXVBA2000 Lesson01 Lesson01.xls 2

データアダプタ概要

PowerPoint プレゼンテーション

untitled

マクロ講座テキスト

情報C 実習プリント

Microsoft Word - VBA基礎(1).docx

(Microsoft Word \203v\203\215\203O\203\211\203~\203\223\203O)

Microsoft PowerPoint - kakeibo-shiryo1.pptx

D0050.PDF

方程式の解法

テキストファイルの入出力1

情報処理実習(工基3)

< 目次 > 1. 練習ファイルのダウンロード 表計算ソフト Excel の基本 Excel でできること Excel の画面 セル 行 列の選択 セルにデータを入力する ( 半角英数字の場合 )

D:\Documents\Visual Studio 2015\Projects\MyHomePage 用サンプル \ExcelAndWord\ExcelAndWord\MainForm.cs 1 /* */ Excel や Word とやりとりする ~9,20 仕様 Excel

untitled

Base によるアプリケーション開発とサポート 鎌滝雅久 /OpenOffice.org 日本ユーザー会 OSC2007 Hokkaido 2007 年 6 月 30 日土曜日 10:55-11:40 北海道大学学術交流会館第 4 会議室

目次 更新履歴... 1 はじめに... 3 レコードセット?... 3 準備... 5 SQL でデータを取得する... 6 データのループ処理... 7 列の値を取得する... 7 対象行を変更する (MoveFirst, MoveNext, MovePrevious, MoveLast)...

プログラミング演習

フローチャート自動生成ツール yflowgen の使い方 目次 1 はじめに 本ツールの機能 yflowgen.exe の使い方 yflowgen.exe の実行方法 制限事項 生成したファイル (gml ファイル形式 ) の開

Microsoft PowerPoint - 第3回目.ppt [互換モード]

プログラミング演習

1. 入力画面

次の病院 薬局欄は 氏名 欄に入力された値によって入力すべき値が変わります 太郎の行く病院と花子の行く病院が必ずしも同じではないからです このような違いを 設定 シートで定義しておきましょう 太郎の行く病院のリストを 太郎 花子の行く病院のリストを 花子 として 2 つのリストが定義されています こ

ORの手法ゲームの理論3 (Excelによるゲーム理論実習)

PowerPoint プレゼンテーション

My関数の作成演習問題集

2013 年 8 月 14 日 管理図作成マニュアル ( 案 ) 益永八尋 Ⅰ. プログラムの概要 品質管理において必要な QC7 道具の一つである管理図作成のプログラムを作成した このプログラムは 下記の管理図を作成するものである 1 BerX-R 管理図 2Me 管理図 3X 管理図 4np 管

Prog1_6th

Transcription:

演習課題レッスン (1) '(1) ワークシートどうしのやりとり ' ワークシート 請求書 1 から ワークシート データ収集 にデータを転記しましょう Sub example01() ' 請求書番号 ( 請求書 1のE2からデータ収集のA2へ ) Worksheets(" データ収集 ").Range("A2").Value = Worksheets(" 請求書 1").Range("E2").Value ' 発行日 ( 請求書 1のE1からデータ収集のB2へ ) Worksheets(" データ収集 ").Range("B2").Value = Worksheets(" 請求書 1").Range("E1").Value ' 会社名 ( 請求書 1のB4からデータ収集のC2へ ) Worksheets(" データ収集 ").Range("C2").Value = Worksheets(" 請求書 1").Range("B4").Value ' 担当者名 ( 請求書 1のB5からデータ収集のD2へ ) Worksheets(" データ収集 ").Range("D2").Value = Worksheets(" 請求書 1").Range("B5").Value ' 請求金額 ( 請求書 1のE31からデータ収集のE2へ ) Worksheets(" データ収集 ").Range("E2").Value = Worksheets(" 請求書 1").Range("E31").Value

'(1) ワークシートどうしのやりとり ' ワークシート 請求書 1 から ワークシート データ収集 にデータを転記しましょう Sub example01() ' 請求書番号 ( 請求書 1 の E2 からデータ収集の A2 へ ) Worksheets(" データ収集 ").Range("A2").Value = Worksheets(" 請求書 1").Range("E2").Value ' 発行日 ( 請求書 1 の E1 からデータ収集の B2 へ ) Worksheets(" データ収集 ").Range("B2").Value = Worksheets(" 請求書 1").Range("E1").Value ' 会社名 ( 請求書 1 の B4 からデータ収集の C2 へ ) Worksheets(" データ収集 ").Range("C2").Value = Worksheets(" 請求書 1").Range("B4").Value ' 担当者名 ( 請求書 1 の B5 からデータ収集の D2 へ ) Worksheets(" データ収集 ").Range("D2").Value = Worksheets(" 請求書 1").Range("B5").Value ' 請求金額 ( 請求書 1 の E31 からデータ収集の E2 へ ) Worksheets(" データ収集 ").Range("E2").Value = Worksheets(" 請求書 1").Range("E31").Value

演習課題レッスン (2) '(2) 最終行に転記する ' データ収集 へデータを転記する際 必ず最終行へ転記するようにしましょう Sub example02() ' データ収集 の最終行を変数に取得 Dim MaxRow As Integer 修正 '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する Worksheets(" データ収集 ").Range("A2").Value = Worksheets(" 請求書 1").Range("E2").Value Worksheets(" データ収集 ").Range("B2").Value = Worksheets(" 請求書 1").Range("E1").Value Worksheets(" データ収集 ").Range("C2").Value = Worksheets(" 請求書 1").Range("B4").Value Worksheets(" データ収集 ").Range("D2").Value = Worksheets(" 請求書 1").Range("B5").Value Worksheets(" データ収集 ").Range("E2").Value = Worksheets(" 請求書 1").Range("E31").Value

'(2) 最終行に転記する ' データ収集 へデータを転記する際 必ず最終行へ転記するようにしましょう Sub example02() ' データ収集 の最終行を変数に取得 Dim MaxRow As Integer MaxRow = Worksheets(" データ収集 ").Cells(Rows.Count, 1).End(xlUp).Row + 1 '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する Worksheets(" データ収集 ").Range("A" & MaxRow).Value = Worksheets(" 請求書 1").Range("E2").Value Worksheets(" データ収集 ").Range("B" & MaxRow).Value = Worksheets(" 請求書 1").Range("E1").Value Worksheets(" データ収集 ").Range("C" & MaxRow).Value = Worksheets(" 請求書 1").Range("B4").Value Worksheets(" データ収集 ").Range("D" & MaxRow).Value = Worksheets(" 請求書 1").Range("B5").Value Worksheets(" データ収集 ").Range("E" & MaxRow).Value = Worksheets(" 請求書 1").Range("E31").Value

演習課題レッスン (3) '(3) データ収集結果を削除する ' 転記されたデータを削除するマクロを作っておきましょう Sub clear03() ' 最終行を変数に取得 Dim MaxRow As Integer MaxRow = Worksheets(" データ収集 ").Cells(Rows.Count, 1).End(xlUp).Row + 1 '2 行目から最終行までのデータを削除する

'(3) データ収集結果を削除する ' 転記されたデータを削除するマクロを作っておきましょう Sub clear03() ' 最終行を変数に取得 Dim MaxRow As Integer MaxRow = Worksheets(" データ収集 ").Cells(Rows.Count, 1).End(xlUp).Row + 1 '2 行目から最終行までのデータを削除する Worksheets(" データ収集 ").Range("2:" & MaxRow).Value = ""

演習課題レッスン (4) '(4)With 構文を使って省略する 'With 構文を使って ワークシート名を省略して入力しましょう Sub example04() ' 最終行を取得しておく Dim MaxRow As Integer MaxRow = Worksheets(" データ収集 ").Cells(Rows.Count, 1).End(xlUp).Row + 1 修正 '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する Worksheets(" データ収集 ").Range("A" & MaxRow).Value = Worksheets(" 請求書 1").Range("E2").Value Worksheets(" データ収集 ").Range("B" & MaxRow).Value = Worksheets(" 請求書 1").Range("E1").Value Worksheets(" データ収集 ").Range("C" & MaxRow).Value = Worksheets(" 請求書 1").Range("B4").Value Worksheets(" データ収集 ").Range("D" & MaxRow).Value = Worksheets(" 請求書 1").Range("B5").Value Worksheets(" データ収集 ").Range("E" & MaxRow).Value = Worksheets(" 請求書 1").Range("E31").Value

'(4)With 構文を使って省略する 'With 構文を使って ワークシート名を省略して入力しましょう Sub example04() ' 最終行を取得しておく Dim MaxRow As Integer MaxRow = Worksheets(" データ収集 ").Cells(Rows.Count, 1).End(xlUp).Row + 1 '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する With Worksheets(" データ収集 ").Range("A" & MaxRow).Value = Worksheets(" 請求書 1").Range("E2").Value.Range("B" & MaxRow).Value = Worksheets(" 請求書 1").Range("E1").Value.Range("C" & MaxRow).Value = Worksheets(" 請求書 1").Range("B4").Value.Range("D" & MaxRow).Value = Worksheets(" 請求書 1").Range("B5").Value.Range("E" & MaxRow).Value = Worksheets(" 請求書 1").Range("E31").Value End With

演習課題レッスン (5) '(5)Worksheet 変数を利用する 'Worksheet 変数を宣言して ワークシートを格納して利用しましょう Sub example05() 'Worksheet 変数を宣言する Dim wstotal As Worksheet Dim wsinv As Worksheet ' データ収集 と 請求書 1 を変数に格納する ' 最終行を取得しておく Dim MaxRow As Integer MaxRow = Worksheets(" データ収集 ").Cells(Rows.Count, 1).End(xlUp).Row + 1 '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する修正 Worksheets(" データ収集 ").Range("A" & MaxRow).Value = Worksheets(" 請求書 1").Range("E2").Value Worksheets(" データ収集 ").Range("B" & MaxRow).Value = Worksheets(" 請求書 1").Range("E1").Value Worksheets(" データ収集 ").Range("C" & MaxRow).Value = Worksheets(" 請求書 1").Range("B4").Value Worksheets(" データ収集 ").Range("D" & MaxRow).Value = Worksheets(" 請求書 1").Range("B5").Value Worksheets(" データ収集 ").Range("E" & MaxRow).Value = Worksheets(" 請求書 1").Range("E31").Value

'(5)Worksheet 変数を利用する 'Worksheet 変数を宣言して ワークシートを格納して利用しましょう Sub example05() 'Worksheet 変数を宣言する Dim wstotal As Worksheet Dim wsinv As Worksheet ' データ収集 と 請求書 1 を変数に格納する Set wstotal = Worksheets(" データ収集 ") Set wsinv = Worksheets(" 請求書 1") ' 最終行を取得しておく Dim MaxRow As Integer MaxRow = Worksheets(" データ収集 ").Cells(Rows.Count, 1).End(xlUp).Row + 1 '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する wstotal.range("a" & MaxRow).Value = wsinv.range("e2").value wstotal.range("b" & MaxRow).Value = wsinv.range("e1").value wstotal.range("c" & MaxRow).Value = wsinv.range("b4").value wstotal.range("d" & MaxRow).Value = wsinv.range("b5").value wstotal.range("e" & MaxRow).Value = wsinv.range("e31").value

演習課題レッスン (6) '(6)3 つのシートを順番に転記 ( ループなし ) ' 請求書 1 請求書 2 請求書 3 の順にデータを転記しましょう Sub example06() ' 変数にワークシートを格納する Dim wstotal As Worksheet Dim wsinv As Worksheet Set wstotal = Worksheets(" データ収集 ") Set wsinv = Worksheets(" 請求書 1") ' 最終行を取得しておく Dim MaxRow As Integer MaxRow = Worksheets(" データ収集 ").Cells(Rows.Count, 1).End(xlUp).Row + 1 '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する wstotal.range("a" & MaxRow).Value = wsinv.range("e2").value wstotal.range("b" & MaxRow).Value = wsinv.range("e1").value wstotal.range("c" & MaxRow).Value = wsinv.range("b4").value wstotal.range("d" & MaxRow).Value = wsinv.range("b5").value wstotal.range("e" & MaxRow).Value = wsinv.range("e31").value ' 次の処理のため 最終行を +1しておく MaxRow = MaxRow + 1 '( 次のページへ )

演習課題 つづき '--- 請求書 2 の処理 ---------------------------------- ' 請求書 2を変数に代入 Set wsinv = Worksheets(" 請求書 2") '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する wstotal.range("a" & MaxRow).Value = wsinv.range("e2").value wstotal.range("b" & MaxRow).Value = wsinv.range("e1").value wstotal.range("c" & MaxRow).Value = wsinv.range("b4").value wstotal.range("d" & MaxRow).Value = wsinv.range("b5").value wstotal.range("e" & MaxRow).Value = wsinv.range("e31").value ' 次の処理のため 最終行を +1しておく MaxRow = MaxRow + 1 '( 次のページへ )

演習課題 つづき '--- 請求書 3 の処理 ---------------------------------- ' 請求書 3を変数に代入 Set wsinv = Worksheets(" 請求書 3") '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する wstotal.range("a" & MaxRow).Value = wsinv.range("e2").value wstotal.range("b" & MaxRow).Value = wsinv.range("e1").value wstotal.range("c" & MaxRow).Value = wsinv.range("b4").value wstotal.range("d" & MaxRow).Value = wsinv.range("b5").value wstotal.range("e" & MaxRow).Value = wsinv.range("e31").value

'(6)3 つのシートを順番に転記 ( ループなし ) ' 請求書 1 請求書 2 請求書 3 の順にデータを転記しましょう Sub example06() ' 変数にワークシートを格納する Dim wstotal As Worksheet Dim wsinv As Worksheet Set wstotal = Worksheets(" データ収集 ") Set wsinv = Worksheets(" 請求書 1") ' 最終行を取得しておく Dim MaxRow As Integer MaxRow = Worksheets(" データ収集 ").Cells(Rows.Count, 1).End(xlUp).Row + 1 '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する wstotal.range("a" & MaxRow).Value = wsinv.range("e2").value wstotal.range("b" & MaxRow).Value = wsinv.range("e1").value wstotal.range("c" & MaxRow).Value = wsinv.range("b4").value wstotal.range("d" & MaxRow).Value = wsinv.range("b5").value wstotal.range("e" & MaxRow).Value = wsinv.range("e31").value ' 次の処理のため 最終行を +1 しておく MaxRow = MaxRow + 1 '( 次のページへ )

つづき '--- 請求書 2 の処理 ---------------------------------- ' 請求書 2 を変数に代入 Set wsinv = Worksheets(" 請求書 2") '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する wstotal.range("a" & MaxRow).Value = wsinv.range("e2").value wstotal.range("b" & MaxRow).Value = wsinv.range("e1").value wstotal.range("c" & MaxRow).Value = wsinv.range("b4").value wstotal.range("d" & MaxRow).Value = wsinv.range("b5").value wstotal.range("e" & MaxRow).Value = wsinv.range("e31").value ' 次の処理のため 最終行を +1 しておく MaxRow = MaxRow + 1 '( 次のページへ )

つづき '--- 請求書 3 の処理 ---------------------------------- ' 請求書 3 を変数に代入 Set wsinv = Worksheets(" 請求書 3") '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する wstotal.range("a" & MaxRow).Value = wsinv.range("e2").value wstotal.range("b" & MaxRow).Value = wsinv.range("e1").value wstotal.range("c" & MaxRow).Value = wsinv.range("b4").value wstotal.range("d" & MaxRow).Value = wsinv.range("b5").value wstotal.range("e" & MaxRow).Value = wsinv.range("e31").value

演習課題レッスン (7) '(7)3 つのシートを順番に転記 ( ループあり ) 'For ループを利用し 請求書 1~3 の順にデータを転記しましょう Sub example07() ~~~~~~~( 途中省略 )~~~~~~~~~~~~~~~~ ' ループ変数 iを宣言 Dim i As Integer 'Forループ(iが1~3まで繰り返す) For i = 1 To 3 Next i ' 請求書 iを変数に格納する Set wsinv = Worksheets(" 請求書 " & i) '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する wstotal.range("a" & MaxRow).Value = wsinv.range("e2").value wstotal.range("b" & MaxRow).Value = wsinv.range("e1").value wstotal.range("c" & MaxRow).Value = wsinv.range("b4").value wstotal.range("d" & MaxRow).Value = wsinv.range("b5").value wstotal.range("e" & MaxRow).Value = wsinv.range("e31").value ' 次のループのため 最終行を +1 しておく MaxRow = MaxRow + 1

'(7)3 つのシートを順番に転記 ( ループあり ) 'For ループを利用し 請求書 1~3 の順にデータを転記しましょう Sub example07() ~~~~~~~( 途中省略 )~~~~~~~~~~~~~~~~ ' ループ変数 i を宣言 Dim i As Integer 'For ループ (i が 1~3 まで繰り返す ) For i = 1 To 3 Next i ' 請求書 i を変数に格納する Set wsinv = Worksheets(" 請求書 " & i) '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する wstotal.range("a" & MaxRow).Value = wsinv.range("e2").value wstotal.range("b" & MaxRow).Value = wsinv.range("e1").value wstotal.range("c" & MaxRow).Value = wsinv.range("b4").value wstotal.range("d" & MaxRow).Value = wsinv.range("b5").value wstotal.range("e" & MaxRow).Value = wsinv.range("e31").value ' 次のループのため 最終行を +1 しておく MaxRow = MaxRow + 1

演習課題レッスン (8) '(8)For Each を使い 全シートを扱う 'For Each ループを使い 全シートのシート名を順番に出力してみましょう Sub example08() ' ワークシート変数を宣言 Dim wsinv As Worksheet ' すべてのワークシートから1つずつ取り出し wsinvに格納 ' ワークシート名を MsgBox で出力する MsgBox wsinv.name

'(8)For Each を使い 全シートを扱う 'For Each ループを使い 全シートのシート名を順番に出力してみましょう Sub example08() ' ワークシート変数を宣言 Dim wsinv As Worksheet ' すべてのワークシートから 1 つずつ取り出し wsinv に格納 For Each wsinv In Worksheets ' ワークシート名を MsgBox で出力する MsgBox wsinv.name Next wsinv

演習課題レッスン (9) '(9)For Eachを使い 全シートを順番に転記する 'For Eachループを使い 全シートから順番にデータを転記しましょう Sub example09() ~~~~~~~( 途中省略 )~~~~~~~~~~~~~~~~ ' すべてのワークシートから1つずつ取り出し wsinvに格納 ' もしワークシート名が データ収集 と一致しなければ '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する wstotal.range("a" & MaxRow).Value = wsinv.range("e2").value wstotal.range("b" & MaxRow).Value = wsinv.range("e1").value wstotal.range("c" & MaxRow).Value = wsinv.range("b4").value wstotal.range("d" & MaxRow).Value = wsinv.range("b5").value wstotal.range("e" & MaxRow).Value = wsinv.range("e31").value ' 次のループのため 最終行を +1 しておく MaxRow = MaxRow + 1

'(9)For Each を使い 全シートを順番に転記する 'For Each ループを使い 全シートから順番にデータを転記しましょう Sub example09() ~~~~~~~( 途中省略 )~~~~~~~~~~~~~~~~ ' すべてのワークシートから 1 つずつ取り出し wsinv に格納 For Each wsinv In Worksheets End If Next wsinv ' もしワークシート名が データ収集 と一致しなければ If wsinv.name <> wstotal.name Then '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する wstotal.range("a" & MaxRow).Value = wsinv.range("e2").value wstotal.range("b" & MaxRow).Value = wsinv.range("e1").value wstotal.range("c" & MaxRow).Value = wsinv.range("b4").value wstotal.range("d" & MaxRow).Value = wsinv.range("b5").value wstotal.range("e" & MaxRow).Value = wsinv.range("e31").value ' 次のループのため 最終行を +1 しておく MaxRow = MaxRow + 1

演習課題レッスン (10) '(10)Workbooks.Open でファイルを開く ' 特定のパスにある Excel ブックを開きましょう Sub example10() ' 特定のパスにあるExcelブックを開く Workbooks.Open (" ") 特定のパスを自分で調べて入力してください

演習課題レッスン (11) '(11) ダイアログで選んだブックを開く ( 単一 ) ' ダイアログ画面で選んだ Excel ブックを開きましょう Sub example11() ' パスを格納する変数を宣言 Dim openpath As String ' ダイアログからブックを選び そのパスを格納 openpath = ' パスにあるブックを開く Workbooks.Open (openpath)

'(11) ダイアログで選んだブックを開く ( 単一 ) ' ダイアログ画面で選んだ Excel ブックを開きましょう Sub example11() ' パスを格納する変数を宣言 Dim openpath As String ' ダイアログからブックを選び そのパスを格納 openpath = Application.GetOpenFilename("Microsoft Excel ブック,*.xls?") ' パスにあるブックを開く Workbooks.Open (openpath)

演習課題レッスン (12) '(12) ダイアログからブックを開き 操作する ( 単一 ) ' 開いたブックのプロパティやメソッドを利用してみましょう Sub example12() ' ダイアログからブックを選び パスを格納する Dim openpath As String openpath = Application.GetOpenFilename("Microsoft Excel ブック,*.xls?") 'Workbook 型の変数を宣言 Dim openbook As Workbook ' ファイルを開き 変数に格納する Set openbook = Workbooks.Open(openPath) ' ブックの名前をMsgboxで出力 (.Nameプロパティ) MsgBox openbook.name ' ブックのパスをMsgBoxで出力 (.Pathプロパティ) MsgBox openbook.path ' ブックを閉じる (.Closeメソッド) openbook.close

'(12) ダイアログからブックを開き 操作する ( 単一 ) ' 開いたブックのプロパティやメソッドを利用してみましょう Sub example12() ' ダイアログからブックを選び パスを格納する Dim openpath As String openpath = Application.GetOpenFilename("Microsoft Excel ブック,*.xls?") 'Workbook 型の変数を宣言 Dim openbook As Workbook ' ファイルを開き 変数に格納する Set openbook = Workbooks.Open(openPath) ' ブックの名前を Msgbox で出力 (.Name プロパティ ) MsgBox openbook.name ' ブックのパスを MsgBox で出力 (.Path プロパティ ) MsgBox openbook.path ' ブックを閉じる (.Close メソッド ) openbook.close

演習課題レッスン (13) '(13) ダイアログのキャンセルに対するエラー処理 ' ダイアログで キャンセル を押した場合のエラー対策をしましょう Sub example13() ' ダイアログからブックを選び パスを格納する Dim openpath As String openpath = Application.GetOpenFilename("Microsoft Excel ブック,*.xls?") ' もしパスが False でなければ処理を行う(Falseなら何もしない) If openpath <> "False" Then End If ' 変数を用意し ブックを開いて格納 Dim openbook As Workbook Set openbook = Workbooks.Open(openPath) ' ブックのプロパティやメソッドを利用 MsgBox openbook.name MsgBox openbook.path openbook.close

'(13) ダイアログのキャンセルに対するエラー処理 ' ダイアログで キャンセル を押した場合のエラー対策をしましょう Sub example13() ' ダイアログからブックを選び パスを格納する Dim openpath As String openpath = Application.GetOpenFilename("Microsoft Excel ブック,*.xls?") ' もしパスが False でなければ処理を行う (False なら何もしない ) If openpath <> "False" Then End If ' 変数を用意し ブックを開いて格納 Dim openbook As Workbook Set openbook = Workbooks.Open(openPath) ' ブックのプロパティやメソッドを利用 MsgBox openbook.name MsgBox openbook.path openbook.close

演習課題レッスン (14) '(14) 開いたブックからデータを転記 ( 単一 ) ' 開いたブックから請求データを転記しましょう Sub example14() ~~~~~~~( 途中省略 )~~~~~~~~~~~~~~~~ ' パスが False でなければ処理を行う If openpath <> "False" Then ' 変数を用意し ブックを開いて格納 Dim openbook As Workbook Set openbook = Workbooks.Open(openPath) '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する ' openbookの最初のワークシート(1) から wstotal.range("a" & MaxRow).Value = openbook.worksheets(1).range("e2").value wstotal.range("b" & MaxRow).Value = openbook.worksheets(1).range("e1").value wstotal.range("c" & MaxRow).Value = openbook.worksheets(1).range("b4").value wstotal.range("d" & MaxRow).Value = openbook.worksheets(1).range("b5").value wstotal.range("e" & MaxRow).Value = openbook.worksheets(1).range("e31").value 'openbook を閉じる openbook.close End If

'(14) 開いたブックからデータを転記 ( 単一 ) ' 開いたブックから請求データを転記しましょう Sub example14() ~~~~~~~( 途中省略 )~~~~~~~~~~~~~~~~ ' パスが False でなければ処理を行う If openpath <> "False" Then End If ' 変数を用意し ブックを開いて格納 Dim openbook As Workbook Set openbook = Workbooks.Open(openPath) '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する ' openbook の最初のワークシート (1) から wstotal.range("a" & MaxRow).Value = openbook.worksheets(1).range("e2").value wstotal.range("b" & MaxRow).Value = openbook.worksheets(1).range("e1").value wstotal.range("c" & MaxRow).Value = openbook.worksheets(1).range("b4").value wstotal.range("d" & MaxRow).Value = openbook.worksheets(1).range("b5").value wstotal.range("e" & MaxRow).Value = openbook.worksheets(1).range("e31").value 'openbook を閉じる openbook.close

演習課題レッスン (15) '(15) 複数のブックを次々に開く! ' 複数のブックのパスを配列に格納し 次々に開きましょう Sub example15() ' 配列のための変数を宣言 (Variant 型 ) Dim arraypath As Variant ' ダイアログから複数のブックを選び 配列にパスを格納する arraypath = Application.GetOpenFilename("Microsoft Excelブック,*.xls?", MultiSelect:=True) ' 配列の要素 (1)(2)(3) に格納されたパスからブックを順に開く Workbooks.Open (arraypath(1)) Workbooks.Open (arraypath(2)) Workbooks.Open (arraypath(3)) (1) (2) (3) 最後 Variant 型変数 配列になって受け取る

'(15) 複数のブックを次々に開く! ' 複数のブックのパスを配列に格納し 次々に開きましょう Sub example15() ' 配列のための変数を宣言 (Variant 型 ) Dim arraypath As Variant ' ダイアログから複数のブックを選び 配列にパスを格納する arraypath = Application.GetOpenFilename("Microsoft Excel ブック,*.xls?", MultiSelect:=True) ' 配列の要素 (1)(2)(3) に格納されたパスからブックを順に開く Workbooks.Open (arraypath(1)) Workbooks.Open (arraypath(2)) Workbooks.Open (arraypath(3)) (1) (2) (3) 最後 Variant 型変数 配列になって受け取る

演習課題レッスン (16) '(16) 複数のブックを最後まで全て順番に開く ' 配列の 1 番目から要素の最大数まで 順番に開きましょう Sub example16() ' ダイアログから複数のブックを選び 配列にパスを格納する Dim arraypath As Variant arraypath = Application.GetOpenFilename("Microsoft Excel ブック,*.xls?", MultiSelect:=True) ' ループ変数 iを宣言 Dim i As Integer 'Forループ(iが1から配列の要素数まで) For i = 1 To UBound(arrayPath) Next i ' 配列の要素 (i 番目 ) のパスからブックを開く Workbooks.Open (arraypath(i))

'(16) 複数のブックを最後まで全て順番に開く ' 配列の 1 番目から要素の最大数まで 順番に開きましょう Sub example16() ' ダイアログから複数のブックを選び 配列にパスを格納する Dim arraypath As Variant arraypath = Application.GetOpenFilename("Microsoft Excel ブック,*.xls?", MultiSelect:=True) ' ループ変数 i を宣言 Dim i As Integer 'For ループ (i が 1 から配列の要素数まで ) For i = 1 To UBound(arrayPath) Next i ' 配列の要素 (i 番目 ) のパスからブックを開く Workbooks.Open (arraypath(i))

演習課題レッスン (17) '(17) 複数のブックを開き 操作する ' 開いた複数ブックのプロパティやメソッドを利用してみましょう Sub example17() ' ダイアログから複数のブックを選び 配列にパスを格納する Dim arraypath As Variant arraypath = Application.GetOpenFilename("Microsoft Excel ブック,*.xls?", MultiSelect:=True) 'For ループ (i が 1 から配列の要素数まで ) Dim i As Integer For i = 1 To UBound(arrayPath) Next i ' 変数を用意し ブックを開いて格納 Dim openbook As Workbook Set openbook = Workbooks.Open(arrayPath(i)) ' ブックのプロパティやメソッドを利用 MsgBox openbook.name openbook.close

'(17) 複数のブックを開き 操作する ' 開いた複数ブックのプロパティやメソッドを利用してみましょう Sub example17() ' ダイアログから複数のブックを選び 配列にパスを格納する Dim arraypath As Variant arraypath = Application.GetOpenFilename("Microsoft Excel ブック,*.xls?", MultiSelect:=True) 'For ループ (i が 1 から配列の要素数まで ) Dim i As Integer For i = 1 To UBound(arrayPath) Next i ' 変数を用意し ブックを開いて格納 Dim openbook As Workbook Set openbook = Workbooks.Open(arrayPath(i)) ' ブックのプロパティやメソッドを利用 MsgBox openbook.name openbook.close

演習課題レッスン (18) '(18)[ 複数ブック版 ] ダイアログのキャンセルに対するエラー処理 ' ダイアログで キャンセル を押した場合のエラー対策をしましょう Sub example18() ' ダイアログから複数のブックを選び 配列にパスを格納する Dim arraypath As Variant arraypath = Application.GetOpenFilename("Microsoft Excel ブック,*.xls?", MultiSelect:=True) ' もしopenPathが配列ならば 処理をする ( そうでなければ何もしない ) If IsArray(arrayPath) Then End If 'For ループ (i が 1 から配列の要素数まで ) Dim i As Integer For i = 1 To UBound(arrayPath) ~~~~~~~( 途中省略 )~~~~~~~~~~~~~~~~ Next i

'(18)[ 複数ブック版 ] ダイアログのキャンセルに対するエラー処理 ' ダイアログで キャンセル を押した場合のエラー対策をしましょう Sub example18() ' ダイアログから複数のブックを選び 配列にパスを格納する Dim arraypath As Variant arraypath = Application.GetOpenFilename("Microsoft Excel ブック,*.xls?", MultiSelect:=True) ' もし openpath が配列ならば 処理をする ( そうでなければ何もしない ) If IsArray(arrayPath) Then End If 'For ループ (i が 1 から配列の要素数まで ) Dim i As Integer For i = 1 To UBound(arrayPath) ~~~~~~~( 途中省略 )~~~~~~~~~~~~~~~~ Next i

演習課題レッスン (19) '(19) 複数のブックを順番に開き データ収集 ' 次々に開いたブックから請求データを転記しましょう Sub example19() ~~~~~~~( 途中省略 )~~~~~~~~~~~~~~~~ 'Forループ(iが1から配列の要素数まで) Dim i As Integer For i = 1 To UBound(arrayPath) ' 変数を用意し ブックを開いて格納 Dim openbook As Workbook Set openbook = Workbooks.Open(arrayPath(i)) '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する ' openbookの最初のワークシート(1) から wstotal.range("a" & MaxRow).Value = openbook.worksheets(1).range("e2").value wstotal.range("b" & MaxRow).Value = openbook.worksheets(1).range("e1").value wstotal.range("c" & MaxRow).Value = openbook.worksheets(1).range("b4").value wstotal.range("d" & MaxRow).Value = openbook.worksheets(1).range("b5").value wstotal.range("e" & MaxRow).Value = openbook.worksheets(1).range("e31").value 'openbookを閉じる openbook.close ' 次のループのため 最終行を +1 しておく MaxRow = MaxRow + 1 Next i

'(19) 複数のブックを順番に開き データ収集 ' 次々に開いたブックから請求データを転記しましょう Sub example19() ~~~~~~~( 途中省略 )~~~~~~~~~~~~~~~~ 'For ループ (i が 1 から配列の要素数まで ) Dim i As Integer For i = 1 To UBound(arrayPath) ' 変数を用意し ブックを開いて格納 Dim openbook As Workbook Set openbook = Workbooks.Open(arrayPath(i)) '[ 請求書番号, 発行日, 会社名, 担当者名, 請求金額 ] をそれぞれ転記する ' openbook の最初のワークシート (1) から wstotal.range("a" & MaxRow).Value = openbook.worksheets(1).range("e2").value wstotal.range("b" & MaxRow).Value = openbook.worksheets(1).range("e1").value wstotal.range("c" & MaxRow).Value = openbook.worksheets(1).range("b4").value wstotal.range("d" & MaxRow).Value = openbook.worksheets(1).range("b5").value wstotal.range("e" & MaxRow).Value = openbook.worksheets(1).range("e31").value 'openbook を閉じる openbook.close ' 次のループのため 最終行を +1 しておく MaxRow = MaxRow + 1 Next i

演習課題レッスン (20) '(20) 画面のチラつきを防止する ' ブックの開閉のたびに画面がチラつくことを防止しましょう Sub example20() ~~~~~~~( 途中省略 )~~~~~~~~~~~~~~~~ ' もし openpath が配列ならば If IsArray(arrayPath) Then End If ' 画面の描画を停止する Application.ScreenUpdating = False 'For ループ (i が 1 から配列の要素数まで ) Dim i As Integer For i = 1 To UBound(openPath) Next i ~~~~~~~( 途中省略 )~~~~~~~~~~~~~~~~ ' 画面の描画を再開する Application.ScreenUpdating = True ' 処理が終わったことを MsgBox で出力 MsgBox " 全ブックからデータを抽出しました "

'(20) 画面のチラつきを防止する ' ブックの開閉のたびに画面がチラつくことを防止しましょう Sub example20() ~~~~~~~( 途中省略 )~~~~~~~~~~~~~~~~ ' もし openpath が配列ならば If IsArray(arrayPath) Then End If ' 画面の描画を停止する Application.ScreenUpdating = False 'For ループ (i が 1 から配列の要素数まで ) Dim i As Integer For i = 1 To UBound(openPath) ~~~~~~~( 途中省略 )~~~~~~~~~~~~~~~~ Next i ' 画面の描画を再開する Application.ScreenUpdating = True ' 処理が終わったことを MsgBox で出力 MsgBox " 全ブックからデータを抽出しました "