情報資源組織演習B:

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

ExcelVBA

PowerPoint プレゼンテーション

Microsoft Word - VBA基礎(3).docx

sinfI2005_VBA.doc

MS-ExcelVBA 基礎 (Visual Basic for Application)

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

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

プログラミング演習

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

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

<4D F736F F D208DEC90AC837D836A B81698F4390B394C5816A2E646F63>

情報C 実習プリント

マクロ講座テキスト

プレポスト【問題】

Microsoft PowerPoint - vp演習課題

プログラミング演習

PowerPoint プレゼンテーション

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

45 VBA Fortran, Pascal, C Windows OS Excel VBA Visual Basic Excel VBA VBA Visual Basic For Application Microsoft Office Office Excel VBA VBA Excel Acc

Microsoft Word - VBA基礎(6).docx

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

My関数の作成演習問題集

OTRS10 他社システムOTRS呼出利用手順書

PowerPoint プレゼンテーション

Microsoft PowerPoint - Visualプログラミング

コンピュータ概論

vi 目次 画像のサイズ設定 画像の効果 画面の取り込みとトリミング Office の共通基本操作 図形 図形の挿入と削除 図形の編集 図形の背景色の透過 Office

EXCEL VBA講座

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

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

PowerPoint プレゼンテーション

正規表現応用

スライド 1

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

無料で多機能な OSS の ETL ツール Kettle を使ってみよう! 情報政策課技術職員金森浩治 1. はじめにデータ処理を行うにあたって非常に便利なツール ETL 本稿では OSS の ETL Kettle の機能とその使用方法を紹介します 2. 用語説明 2.1 OSS とは? OSS と

コンピュータ概論

第1部参考資料

Microsoft Word - VBA基礎(1).docx

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

変更履歴 版数変更日変更内容 /9/1 初版設定

PowerPoint プレゼンテーション

Wordの学習

第 12 講データ管理 1 2 / 14 ページ 12-1 データベースソフトの概要 データベースとは集められた様々なデータをテーマや目的に沿って分類 整理したものです データベースソフトでは データベースを作成し その管理を行います 何種類ものファイルや帳簿で管理していたデータをコンピュータ上で互

Datalink_summary

Wordでアルバム作成

(Microsoft Word - Excel\216\300\217K\212\356\221b1.doc)

スライド 1

エクセルの基礎を学びながら、金額を入力すると自動的に計算され、1年分の集計も表示される「おこづかい帳」を作りしょう

Microsoft Word - 操作マニュアル(PowerPoint2010).doc

図 2 Excel スプレッドシートの世界 のウィンドウ 図 3 Visual Basic の世界 のウィンドウ 図 3 の VBA ウィンドウは 図 2 の Excel ウィンドウのメニューの ツール をクリックし 開か れるプルダウンメニューで マクロ /Visual Basic Editor

PowerPoint プレゼンテーション

Java KK-MAS チュートリアル

スライド 1

Microsoft PowerPoint - kougi2.ppt

MoreStudy 第 6 章 MoreStudy 第 6 章 第 1 節 貼り付け 3 [ 形式を選択して貼り付け ] ダイアログから [Microsoft Excel ワークシート ] を選択し [OK] ボタンを 押します 1 Excel ワークシートで貼り付け [Pastespec] リボン

医用工学概論  Medical Engineering (ME)   3年前期の医用工学概論実習と 合わせ、 医療の現場で使用されている 医用機器を正しく安全に使用するために必要な医用工学(ME)の 基礎知識を習得する。

JavaScriptで プログラミング

職業訓練実践マニュアル 重度視覚障害者編Ⅰ

D0020.PDF

Microsoft Word - 操作マニュアル(PowerPoint2013)

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

Transcription:

情報資源組織演習 A( 書誌の作成 ) 第 13 回書誌データ管理 検索システムの構築 第 14 回ネットワーク情報資源のメタデータ作成の実際 第 15 回まとめ 2013 年度跡見学園女子大学文学部准教授福田博同

検索システムの構築 ( 静的データベース ) 第 12 回で HTML ファイルに Google 検索窓を埋め込む方法は理解した 今回 :Excel の VBA を使い データベース的検索処理を行う ここでは必要最小限のみ説明する 基礎を学ぶ必要があり 公式サイト以外に Office TANAKA / 田中亨氏 よねさんの Word と Excel の小部屋 Office Pro / Tatsuo Ikura 氏 モーグ わずかな知識で VBA! / 上田誠氏 Excel VBA によるマクロプログラミング / 斉藤俊則氏 等々 無数にある Web 上の好教材を参照し 自習されたい 使用ソフト :Microsoft Excel または Open Office の Calc 手順 : 1. Excel マクロで見本分を理解 2. Excel VBA で見本分を理解 3. Excel VBA でプログラムを実行 4. Excel ワークシートにマクロを貼り付ける

処理の概要 ( 必要部分のみの解説 ) Excel には マクロと VBA がある マクロは手順を記憶し 登録するといつでも利用できる ( 大幅な効率化が図れる ) 手順の結果内容が表示される 処理を理解する マクロの限界 : 作業手順変更 繰り返し処理の対応など VBA を利用する マクロの実態は VBA であるが 手順部分を分かるようにしているプログラム VBA とは Visual Basic というプログラムである XML ファイルに変換したり 外部ファイルを処理したり 様々な処理がプログラムで可能 見本分で理解する では マクロから始める

マクロの操作 1. 見本ファイル wakadata.xl sx のワークシート Sheet1 の B 列 ( 項目 ) で 日本 を探す 2. マクロを記録する : 手順表示 マクロ マクロの記録 ここから記録が開始される

マクロ名を入れ 検索マクロを作る 1. マクロ名に B 列キーワード検索 と入れ Enter してみよう 2. 記録が開始される

検索マクロの手順を行い記録終了 1. B をクリック :B 列が選択される 2. Ctrl + F キーを入れる 検索と置換 窓が出る 3. 検索する文字列に日本と入れる 4. 次を検索をクリック 1. 検索窓を閉じて 2. 表示 マクロ 3. 記録の終了をクリック 4. すると

マクロファイル名を保存するが 1. マクロ画面がでて 2. ファイル 保存 (Ctrl + S) で 3. マクロなしのブックに保存できませんと言われ 4. いいえと入れます

マクロ有効ブックで保存 実行 1. ファイルの種類を 2. Excel マクロ有効ブックにする 3. 和歌データ.xlsm で保存される 4. では 実行してみよう 5. Alt + F8 キーで B 列キーワード検索 を実行してみる

検索が実行される シートに埋め込む セル B12 へ移動した シートにマクロ枠を作る 挿入 テキスト テキストボックス 横書きテキストをクリック

検索が実行される シートに埋め込む 横書きテキスト枠を右下へ広げ B 列検索と書く 枠左下を右クリックするとマクロの登録が出る クリック

マクロ枠作成完了 マクロの登録で B 列キーワード検索を選び OK すると登録される 次回からは マクロ枠をクリックすると利用できる 繰り返し処理などは VBA で行う つぎは VBA を学ぼう

VBA でデータベース的検索処理 B 列キーワード検索 マクロで Selection.Find(What:= 日本 が検索の方法かな? と理解されたであろうか? 文字列検索法は Find メソッドや Filter メソッドがある まず Find メソッドで試してみる Alt + F11 キーで VBA エディタを出す スペースや英数記号はすべて 半角英数 Office TANAKA すべて検索するを参考に 変数を日本語にかえ 検索語を日本にしてみる Sub 見つかったセル () Dim 見つかったセル As Range Set 見つかったセル = Cells.Find(What:= 日本 ") If 見つかったセル Is Nothing Then MsgBox " 見つかりません " Else 見つかったセル.Activate End If End Sub 解説は次ページ

VBA の基本 Sub マクロ名 () で始まり End Sub で終わる Dim 見つかったセル As Range 変数を使う 変数とは入れ物で 中に入るものが変わる 使う時は Dim で宣言する 変数名は日本語でも可能になった ( 見つかったセル は変数 ) As Range はセルの意味 型には String が文字列, integer が整数 などがある 参照 : エクセル大辞典 / 武藤玄氏

VBA の基本 if then else Set 見つかったセル = Cells.Find(What:= 日本 ) 日本 という文字列のあるセルを 見つかったセル という変数に入れなさい( 詳細解説日経 PC21) If 見つかったセル Is Nothing Then MsgBox 見つかりません Else もし (If)~~ なら Then してそうでないなら (Else) しよう そして Ifを閉じよう (End If) MsgBoxはメッセージボックスが出ます 保存したらマクロを表示して 実行してみる 見つかったセル.Activate で C4セルに移動する

VBA の基本検索ボックスから入れる 次の見本は VBA を編集せずに 検索ボックスを出してキーワードを入れる方式 参照 : 文字列検索 -Find メソッドの応用 / モーグ 実は奥が深い InputBox / Office TANAKA, Excel VBA 入門講座ほか前回 :Sub 見つかったセル () Dim 見つかったセル As Range, 最初のセル As Range, ターゲット As Range Set 見つかったセル = Cells.Find(What:= 日本 ") 今回 :Sub キーワード検索 () Dim 見つかったセル As Range, 最初のセル As Range, ターゲット As Range, キーワード As String キーワード = Application.InputBox( キーワードを入れよう, 検索, Type:=2) Application.InputBox はタイプを指定した入力窓です Type:= 2 は文字列です Set 見つかったセル = Cells.Find(What:= キーワード ) If 見つかったセル Is Nothing Then MsgBox " 見つかりません " Exit Sub Else Set 最初のセル = 見つかったセル Set ターゲット = 見つかったセル End If Do Set 見つかったセル = Cells.FindNext( 見つかったセル ) If 見つかったセル.Address = 最初のセル.Address Then Exit Do Else Set ターゲット = Union( ターゲット, 見つかったセル ) End If Loop ターゲット.Select MsgBox ターゲット.Count & " 件見つかりました " End Sub

VBA の基本 If Then Else Do Loop では 次のように書き直そう Sub 見つかったセル () Dim 見つかったセル As Range, 最初のセル As Range, ターゲット As Range Set 見つかったセル = Cells.Find(What:= 日本 ") If 見つかったセル Is Nothing Then MsgBox " 見つかりません " Exit Sub Else Set 最初のセル = 見つかったセル Set ターゲット = 見つかったセル End If Do Set 見つかったセル = Cells.FindNext( 見つかったセル ) If 見つかったセル.Address = 最初のセル.Address Then Exit Do Else Set ターゲット = Union( ターゲット, 見つかったセル ) End If Loop ターゲット.Select MsgBox ターゲット.Count & " 件見つかりました " End Sub そして 前回のようにマクロ枠を作ろう Do Loop は繰り返し行え の命令なので Exit Do がないと無限ループになるので忘れないように

フィルタによる検索色付け 文字列の中を変えるには Find メソッドでのデータ検索 / よねさん 等を参照しようまず 見つかったセルを緑色にしよう Sub 列 B からキーワードをフィルタで検索し色づけ () ' Dim 入れ物 As Object, キーワード As String Columns("B:B").Select ' 列 B を選んで With Selection.Interior 'End With まで Interior ことセルの内部を選ぶ.Pattern = xlnone ' セルのパターンを修飾しない.TintAndShade = 0 ' 色の明暗を標準に.PatternTintAndShade = 0 ' 網掛けをなしに End With キーワード = Application.InputBox(" キーワードを入れよう ", " 検索 ", Type:=2) For Each 入れ物 In Range("B:B") 'B 列で 各 入れ物 の If 入れ物.Value Like * & キーワード & * Then 入れ物 のセルにキーワードがあれば入れ物.Interior.ColorIndex = 4 ' 入れ物 のセルを緑色にする End If Next 入れ物 End Sub

フィルタによる検索色付け 次に それを緑色にしよう Sub 緑色フィルタにする () Columns("B:B").Select Selection.AutoFilter ActiveSheet.Range("B:B").AutoFilter Field:=1, Criteria1:=RGB(0, 255 _, 0), Operator:=xlFilterCellColor End Sub Sub フィルタをもどす () ' ' B 列フィルタをオートにする Columns("B:B").Select Selection.AutoFilter End Sub Sub 色フィルタをなくす () ' 色フィルタをなくす Macro Columns("B:B").Select With Selection.Interior.Pattern = xlnone.tintandshade = 0.PatternTintAndShade = 0 End With With Selection.Font.ThemeColor = xlthemecolorlight1.tintandshade = 0 End With End Sub

Excel VBA のデータベース的扱い 以上で Excel VBA によるデータベース的扱いのほんのさわりを見た ただ 本格的データベースソフトではないので限界は前述した Microsoft Access や SQL も挑戦しよう しかし Excel 上 Web データを取り込んだり Access や Text など他形式のファイルもやりとりできる もちろん HTML ファイルや XML ファイルも出力できる そこで Excel から XML データ出力により XML データベースの構築もできる 次回は XML データ出力を実習する