ExcelVBA

【ExcelVBA】ケースごとに処理を分ける

◎ケースごとに処理を分ける まずどういうケースになるのか変数を決めます。今回は「テスト」か「本番」で処理を変えるってのを例題にします。「テスト」とか「本番」は文字列なので変数はstringを当てます。あとはコピってちょいちょい、ってアレンジして使…

【ExcelVBA】データの最終列を取得する

◎データの最終列を取得する 前回の記事では、データの最下段を取得する方法を記載しましたが、今回はデータの最終列の取得です。右端がどこか、ってことですね。 最下段の取得方法と書き方はとても似ている、というか、こういう構文なんだな、って併せて丸暗…

【ExcelVBA】データの最下段を取得する

◎データの最下段を取得する データの一番下がどこかわかれば、その下の空白行からデータを入れていくことができたりいろいろ便利です。データすべてに処理を行いたい場合、お尻がわからないLoopなどで処理すると、Loopを終わらせる条件が何らかの理由で一致…

【ExcelVBA】ハイパーリンクで処理を起こす

◎ハイパーリンクで処理を起こす エクセルではハイパーリンクを貼ることができますが、エクセル自体の機能だと、別の場所に飛ぶ(移動する)ことくらいしか設定できません。VBAで書くと、ハイパーリンクをクリックすると、なにかしらの処理を起こすことのでき…

【ExcelVBA】ダブルクリックでセルに処理を行う

◎ダブルクリックでセルに処理を行う セルをダブルクリックするだけで、チェックを入れられたりチェックを消したりできます。この処理を行うのは、Private Subで行います。通常モジュール内に記述するのではなく、シート単位でのイベント処理を行います。※ワ…

【ExcelVBA】MsgBox内での改行

◎MsgBox内での改行 MsgBox(メッセージボックス)の内容が長ったらしくなっちゃって見にくくなる場合、MsgBox内での改行を行うとぐっと見やすくなります。 ’--- ’MsgBox内での改行 MsgBox "テスト1" & vbNewLine & "テスト2" ’--- vbNewLineを使います。改行…

【ExcelVBA】MsgBoxのNoのときの抜け方

◎MsgBox(メッセージボックス)のNo(ノー)のときの抜け方 メッセージを表示するだけのMsgBoxではなく、「はい」と「いいえ」のついているMsgBoxを使う方法です。 ’--- ’変数の宣言Dim ans As Integer ’ansでYesかNoを取得ans = MsgBox("実行しますか?", B…

【ExcelVBA】配列の初期化

◎配列の初期化 初期化とは、配列の中身をからっぽにする感じです。 例)配列の変数名:Hensu '--- '配列の初期化 Erase Hairetsu '--- ウォッチウインドウで配列を確認しながらEraseを行ってみると、配列がどうなっているかわかりやすいです。 配列の数(要…

【ExcelVBA】配列の最大インデックス数はUbound、最小インデックス数はLbound

◎配列の最大インデックス数はUbound、最小インデックス数はLbound もうね、タイトルだけで解決するから来てもらえないんじゃないかと思うんだけど。とりあえず下のとおりです。 例)配列の変数名:Hensu ’---- ’配列の最大インデックス数を取得する(最大行…

【ExcelVBA】作成した配列をシートにぺたっと貼り付ける

◎作成した配列をシートにぺたっと貼り付ける 例)変数名:Hensu 10レコード(行)、3カラム(列)の配列を セルA1からセルC10の範囲にぺたっと貼り付ける ’----’方法1 作成した配列をシートにぺたっと貼り付けるActiveSheet.Range("A1:C10") = Hensu’方法2…

【ExcelVBA】空の2次元配列をつくる

◎空の2次元配列をつくる 例)変数名:Hensu ’----’変数の宣言Dim Hensu() As Variant ’10レコード(行)、3カラム(列)分の空の配列をつくるReDim Preserve Hensu(1 To 10, 1 To 3) ’---- <補足>Hensuのカッコの中の最初の1 to 10 ←レコード(行)の指定1…

【ExcelVBA】選択範囲を配列にさくっと入れる

◎選択範囲を配列にさくっと入れる 例)変数名:Hensu 対象範囲:セルA1からセルC10まで’----’変数の宣言Dim Hensu() As Variant '方法1 そのまま範囲指定して配列に入れることができるHensu = Activesheet.Range("A1:C10").Value '方法2 こっちだと、セル単…