2020-01-01から1年間の記事一覧

ステムプロット(幹葉表示)・箱ひげ図

幹(ステム)と葉(リーフ)と呼ばれる2つの部分に値をわけて表しヒストグラムに似た図になる。 今日(2020.10.22)現在のパ・リーグ規定打席以上(26名)の打撃成績を見ると 0.355 0.29 0.278 0.259 0.245 0.212 0.344 0.283 0.277 0.258 0.241 0.34 0.282…

VBA 丸付き数字を使う

データ内の数字を①、②・・・や➊、➋・・・Ⅰ、Ⅱ・・・で表示して目立つようにしたい場合、文字として扱うと①、②と順番に変えていくことが面倒です。 そこでUnicodeを使いたいのですがUnicode表は16進数で表示されているのが多く変数として扱うにはハードルが高…

VBA フィルタを操作する

複数の人が操作(読み書き)をするようなファイルをVBAを使うとフィルタがかけられて思わぬエラーに遭遇したり書き込み消し込みが正常に機能しなかったり不具合が発生することがある。 一番シンプルで簡単なものはVBA操作の最初に3行を記入しておけば不具合…

VBA Modを使う(割り算の余りを求める)

10進法で作業が進めにくい場合もあります。意外と使い道があるので覚えてください。 まず、Excelでは 答え「1」のところの数式は、 =MOD(A2,B2) <R1C1参照形式:=MOD(RC[-2],RC[-1]) > 割られる数 割る数 余り 10 3 1 VBAでは下のように記述…

VBA R1C1参照形式からA1参照形式に変換

Excelは通常、A1参照形式で扱うことが多いがそれ以外にA列、B列ではなく列表示も数字のR1C1参照形式がある。 昭和世代にはロータス形式、マルチプラン形式のほうが馴染みやすいが今では通じない死語かも知れない。 VBAでは変数を扱う場合、数字のほうが変数…

VBA 空白(””)を含む数式を入れるときの処理

計算式が無効にならないように空白を考慮した計算式例 1 2 3 4 1 出身県 人数 年俸 平均年俸(万円) 2 岐阜 1 1,800 =IF(RC[-2]<>"",RC[-1]/RC[-2],"") 3 静岡 4 32,770 =IF(RC[-2]<>"",RC[-1]/RC[-2],"") 4 愛知 =IF(RC[-2]<>"",RC[-1]/RC[-2],"") 5 三重 …

VBA DateAdd関数

VBA DateAdd関数 指定した時間間隔を日付に加算してその日付を含む Variant (Date) を返します。 使用例 ・販売予測と在庫数から在庫がなくなる日を予測します。 ・在庫が無くなる予測日から補充発注をする日を割り出します。 DateAdd(interval, number, dat…

VBA データベースの最終行を調べる

Excel VBAを使ってデータベースを集計するとき、レコードの最終行を知る必要がある。 私が最初に覚えたのがCurrentRegionプロパティで、例えば GYO = Sheets("Data").Cells(1, 1).CurrentRegion.Rows.Count Dataシートの1行目からデータが入っているものに…

VBA セルを色塗りする

データの内容に応じてセルの色を変えたい場合、VBAで処理をしなくてもExcelの「条件付き書式」で設定をしておけばいい。とは言えExcelデータで作業をしていると「条件付き書式」ではないほうがいいこともある。そんなときに活用したい。 例えば、VBAでデータ…

輝の問題

樹の問題

VBA 全角半角混在の英数字を統一する(Str Conv関数)

入力時のExcel環境によりアルファベットが半角であったり全角であったり統一性がないデータを集計すると誤った集計がされてしまうことがある。 特に複数のデータベースを使って作業をする場合は文字列を統一しておくこと。 Sub Macro21()Cells(2, 1) = …

12分の1公式

3分の1公式

6分の1公式

VBA Format関数

データベースに日付を入力したいことは頻繁にあるがその時、活躍するのがFormat関数です。例えばファイル名に今日の日付を使いたい場合にも簡単にできます。 Sub Macro1() Cells(1, 1) = Format(Now, yyyymmdd)Cells(2, 1) = Format(Now, "yyyymmdd") Cells(…