定数を宣言する 定数を使用する VBA マクロ 

今回は定数の使用方法について投稿します。

 

宣言方法は下記

 

Const  定数の名前  as  データの型  =  “文字列”  or  数値

 

文字列の場合はダブルクオーテーションを忘れずに!

数値の場合はダブルクオーテーション不要です。

サンプルコードは下記

 

 

ではでは♪

VBAマクロ VBE エディター プロパティウィンドウへのショートカットキー

F4 キー です!

 

マクロを書いているとほとんどマウスは使いませんね。

ただしあれっプロパティウィンドウ邪魔だなっ!

てなときありますよね。

そのときの工程をよくみてみましょう。

→キーボードから手を離す

→目をマウスまで移す

→マウスに手を伸ばす

→カーソルを確認する

→ウィンドウの閉じるマークを選択して閉じる

→キーボードポジションに手を移す

何気に生産性が悪いのです。

時間も塵も積もれば山となる。

ここでもネズミを使わないようにショートカットキーを覚えましょう。

 

完全にキーボードで終わらせるには

→F4キー ×2

→Tabキー

→Shift + F10

→【↓】+ Enter

これで解決です。

 

覚えればやはりネズミ使うより早いです!

コツコツとショートカットを覚えていきましょう♪

罫線(破線の格子)を設定する エクセルVBA 破線 格子 マクロ

続いて、 破線にするマクロをご紹介します

 

 

点線と破線でどう違うんじゃい!!と思った方は下記の画像でご確認ください笑

 

点線                   破線

 

 

 

 

 

 

※画像が見づらかったらごめんちゃい。実際にマクロを使用して確認してみてください♪

 

とりあえず違いがわかりづらいです笑

 

破線の方が濃く見えるかなって感じです。

 

ではでは♪

行を削除してもエラーが起きない関数の組み合わせ 関数 ワークシート関数

たまには趣向を変えて関数の投稿をしたいと思います。

 

今回はVlookUp関数についての投稿です

 

表のマッチングでよく使うVlookUp関数

 

マクロを使えない頃私はよくお世話になってました。

 

非常に便里なVlookですが、

 

参照元の表の行を削除するとエラーで崩れてしまいます。

 

そんなときには、

 

VlookUP + Offset関数 を使うべし!

 

サンプルコードは添付をご覧ください。

入力シートにはIDとサンプル関数・リスト一覧があります。

サンプル関数をよくご覧になって参考にしてください。

 

 

サンプルコード(Vlookup+Offset)

 

Offset関数は基準セルからの高さが肝心!

 

 

とは言ってもマクロを使えばイチコロですが☆彡

 

この入れ子の構造がわかればマクロを学ぶとき、大きな助けになります♪

 

ご質問があればなんなりと♪

外枠罫線を設定する マクロ VBA 外枠

前回の投稿では罫線を設定するマクロを紹介しました。

http://kimama-vba.com/2018/06/28/borders_vba_macro_lattice/

 

今回は外枠の設定方法について投稿します♪

Bordersプロパティとは違い、

 

BorderAround メソッド

を使用します。

 

パラメーター

名前 必須 / 省略可能 データ型 説明
LineStyle 省略可能 バリアント型 (Variant) XlLineStyle クラスの定数のいずれかで、罫線の種類を指定します。
Weight 省略可能 XlBorderWeight 罫線の太さを指定します。
ColorIndex 省略可能 XlColorIndex 罫線の色を現在のカラー パレットのインデックス番号または XlColorIndex定数で指定します。
Color 省略可能 バリアント型 (Variant) 罫線の色を示す RGB 値を指定します。
ThemeColor 省略可能 バリアント型 (Variant) テーマの色を現在の配色テーマのインデックス番号または XlThemeColor値で指定します。

 

外枠罫線は Weight の xlMedium とすれば太枠の外枠罫線となります。

 

サンプルコード

B2からC5まで外枠罫線を引きます。

 

ではでは♪

罫線を設定する VBA マクロ 格子

表の設定などで必要になってくる罫線の設定

 

わざわざマクロの記録をして罫線を設定して、

モジュールから登録されたマクロを確認して、、

やたら長ったらしいコードから必要なコードをみつけて。。。

なんてめんどくさい!って思いますよね。

 

 

そんな時には

Borders コレクション の Linestyle プロパティ

を使用しましょう♪

種類は下記の通りです。

名前 説明
xlContinuous 1 実線
xlDash -4115 破線
xlDashDot 4 一点鎖線
xlDashDotDot 5 ニ点鎖線
xlDot -4118 点線
xlDouble -4119 2 本線
xlLineStyleNone -4142 線なし
xlSlantDashDot 13 斜破線

= True にしても格子罫線を引けます。

 

格子罫線を外す場合は

 

= False

 

にすれば外せます。

Boldersオブジェクトの引数には

xlBordersIndex クラスの

xlDiagonalDown  左上隅から右下への罫線

xlDiagonalUp  左下隅から右上への罫線

xlEdgeBottom  下側の罫線

xlEdgeLeft  左端の罫線

xlEdgeRight  右端の罫線

xlEdgeTop  上側の罫線

xlInsideHorizontal  範囲外の罫線を除く、範囲内のすべてのセルの水平罫線

xlInsideVertical 範囲外の罫線を除く、範囲内のすべてのセルの垂直罫線

 

で指定できます。

 

 

ではでは♪

定数のみを選択する VBA マクロ

久々の投稿です。

 

ネタはたくさんあるんですが、更新する時間がとれず。。

 

ってことで今回のネタ 「定数のみを選択するマクロ」

 

金額のリストや計算書では手入力セルとシート関数セルがありますよね。

週次の計算の更新をするために、

この手入力セルとシート関数セルをわけて消すのも面倒ですよね。

 

そんなときに使える

 

Range.SpecialCells メソッド

 

セルの取得とは言っても、たくさんの取得種類があります。

 

XlCellType 定数
xlCellTypeAllFormatConditions 表示形式が設定されているセル -4172
xlCellTypeAllValidation 条件の設定が含まれているセル -4174
xlCellTypeBlanks 空の文字列 4
xlCellTypeComments コメントが含まれているセル -4144
xlCellTypeConstants 定数が含まれているセル 2
xlCellTypeFormulas 数式が含まれているセル -4123
xlCellTypeLastCell 使われたセル範囲内の最後のセル 11
xlCellTypeSameFormatConditions 同じ表示形式が設定されているセル -4173
xlCellTypeSameValidation 同じ条件の設定が含まれているセル -4175
xlCellTypeVisible すべての可視セル 12

 

今回は定数を取得するので、xlCellTypeConstants となります。

サンプルは下記です♪

定数は消えて、数式は残ります。

Sub SelectType()
Cells.SpecialCells(xlCellTypeConstants).Select
Selection.ClearContents
End Sub

 

 

ではでは♪

バイナリーモードで読み込む(そもそもバイナリーってなんだ?) VBAマクロ

テキストファイルを操作するマクロ書いてたらぶち当たったので備忘録として。

 

バイナリーモードってのは 2進数で表現されたデータ(テキストファイル以外)を読み込みますよってこと

 

テキストファイル以外のファイルを扱う時に使うって覚えておけば問題ないかな!

 

あんま使わないけどw

 

サンプルコード

 

Sub filesousa()
Dim fun As String
Dim Num As Integer
Num = FreeFile
Open “‘C:\Users\Yusuke\Documents\名前入力.txt” For Binary As #Num ※下線部分は適宜作成してください。
fun = Space(FileLen(“C:\Users\Yusuke\Documents\名前入力.txt”))
Get #Num, , fun
Range(“A1”).Value = fun
Close Num
End Sub

 

セルに関数を入れる VBA マクロ

マクロで合計出せるけど、しがらみがあって(笑)マクロにできないという場面があるかと思います。

 

そんなときにセルに関数を挿入したいなと思うかもしれません。

 

そんな時に使用するのが Formula プロパティ

 

Range.Formula

 

もしくは

 

Cells.Formula

 

を使用すればサクッとできます♪

 

Sub Formulasam()
Range(“A1:A10”).Value = 5
Range(“A11”).Formula = “= SUM(A1:A10)”
End Sub