VBAの勉強を始めてみた

色々試しています。

EXCEL

暗号のような書式記号を使いこなす(日時用)

今回は日時用の書式記号についてまとめてみます。余談ですが、2019年5月1日に改元される予定となっています。書式についてはどのような対応になるんでしょーか? 目次 日付を表示する書式記号 時刻を表示する書式記号 区切り記号(文字列)は任意 日付を表示…

暗号のような書式記号を使いこなす(数値用/文字用)

Excelの書式設定から、表示形式-ユーザー定義の順に辿ると_ * #,##0.00_ ;_ * -#,##0.00_ ;_ * "-"??_ ;_ @_ このような、暗号のようなものを見かけることがあると思います。普段、何となくExcelを使っている人にとっては、は?(@_@;)っていう感じだと思…

ひっそりとExcel関数のおさらい(ワークシート関数 VBAで使用出来るもの・出来ないもの)

Excel関数(ワークシート関数)は、「WorksheetFunction.関数名」としてVBAでも使用することができます。では、すべてのExcel関数をVBAで使用できるのか?というと、そうではなく、使えないものもあったりします。今回は、約480近くあるExcel関数のうち、VBA…

ひっそりとExcel関数のおさらい(VLOOKUP関数/HLOOKUP関数)

今回はVLOOKUP関数、HLOOKUP関数について簡単にまとめてみます。 と、その前にちょっと雑談を。何かを学ぶには 必要に迫られて勉強する 今は必要ないけれど、とりあえず勉強する という2パターンがあると思います。このうちの後者は意外と重要で、とりあえ…

ひっそりとExcel関数のおさらい(アドインの登録/編集/解除および削除)

前回、ユーザー定義関数(自作関数)を紹介しましたが、これをアドインとして登録する方法について書いておきます。 作成したユーザー定義関数を常にExcelで使用したい時は、ユーザー定義関数を作成したブックをアドインとして登録する必要があります。個人…

ひっそりとExcel関数のおさらい(二進化十進数の相互変換)

今回は自作関数です。前回、基数変換について書きましたが、そういえば二進化十進数を相互変換する関数ってないんだなーと思い、作ってみました。無くても困りませんが、遊びで作ってみました。 目次 そもそも二進化十進数って? BCD表現における10進数を2進…

ひっそりとExcel関数のおさらい(ビット演算/基数変換)

なんとなく使いそうなExcel関数のまとめシリーズです。 目次 基数変換を行う(進数表現の変換) ビット演算を行う 基数変換を行う(進数表現の変換) 2進数を8進数に変換(BIN2OCT関数) =BIN2OCT(2進数,[桁数])[]内は省略可能な引数 引数の2進数から、8…

ひっそりとExcel関数のおさらい(三角関数に関するもの)

最近、自分が本当にやりたいことは何なのか自問自答してしまうことがあります。承認欲求を満たすために何かを行うのは気が重く、自分の勉強のために何かを行うのは気が楽です。でも、他人の目を「気にしすぎない」のは単なる独りよがりにも繋がります。その…

ひっそりとExcel関数のおさらい(日付/時刻に関するもの)

今回は日付/時刻に関する関数について、おさらいをします。と、同時に新たな気づき、アイデアに繋がればいいなーと思ってます。Excel関数に関しては、既に多くのウェブサイト・書籍等で解説しつくされていますが、自分の頭を整理するためになるべく自分の言…

ひっそりとExcel関数のおさらい(SUMIFS、COUNTIFS、AVERAGEIFS)

Excelを使っていると、VBAを組むという行為そのものが非効率であるといった場合もあったりします、そういう時にはExcel関数だけで仕事の効率化が図れることもあります。また、Excel関数を覚えておくと、VBAの中でも使うことができるので便利です(ワークシー…

年度はどうして4月始まりなの?

年を越しても、3月末までは変わらない「年度」・・・。今回は、なぜか年の瀬に「年度」について、調べたり考えたりしたことをまとめてみました。ついでに、エクセルのピボットテーブルを年度単位で作るための補助的マクロを掲載しちゃいます。 目次 国によって…

ブログを書くこと自体がプログラミングのようなもの?(雑記-5)

こんばんにゃ。とりとめのない雑記です。 ブログを書くこと自体がプログラミングのようなもの?最近ブログを書いていて思うのですが、ブログを書くこと自体がプログラミングのようなものではないか・・・と思うのです。日本語という言語を使って、考え・思いな…

ブログを見やすくする:ソースコードを見やすくカスタマイズ ~<pre><code>タグ~

これまでブログの見た目には無頓着だった私ですが、ブログの見やすさにも少し気を配ったほうが良いという声が聞こえた(気がした)ので、今回からちょっとずつカスタマイズしてみたいと思います。 まず、今更ですが、ブログに掲載するソースコードを見やすく…

セルの背景色および文字色の16進数を取得(CSS用に)

CSSで文字色や背景色の指定を行う際は、RGB値や16進数で色を指定することになるかと思います。 p { color: #2F4F4F; ←こーゆうヤツ} 色のRGB値や16進数は、色見本を一覧表にしているHPなどで調べるか、ペイントの色の編集などで調べられますが、ちょっとだけ…

非プログラマーがプログラミングの基礎を学んだのちに、進むべき方向は?(雑記-4)

今回は、プログラミングを本職としていない非プログラマーな私が非プログラマーを代表(?)してプログラミングとの付き合い方を考えてみたいと思います。 テクニックではなくアイデアで勝負する まあ・・・非プログラマーは趣味でプログラミングをやっているだ…

コサイン90度は0にならない?

先日、仕事で三角関数を使う場面があったのですが、エクセルでcosの計算をしたところ、90°のところで結果が「0」にならず、一瞬ぽかーんとなってしまいました。「あるぇ~、確かcos90°って0になるはずだよね?もしかして今まで勘違いしてたんだろうか(゜ρ゜)…

即席でちょっとだけ便利なマクロを書いてみるよ

今回は無くても困らないけど・・・あればちょっとだけ便利かもしれないマクロを書いてみます。もしかしたらエクセルの標準機能でまかなえることをやっているかもしれませんが、そこはご愛嬌。わざわざ1記事にするまでもないので纏めて詰め込みます。 選択範囲の…

選択中のセルの文字列に右側nセル分の文字列を連結する 其の弐

前回の「選択中のセルの文字列に右側nセル分の文字列を連結する」を発展させてみました。 前回の記事 kouten0430.hatenablog.com 非表示の列を処理対象外になるように改修。(下の画像ではB、D、Fが非表示) 連結対象となるセル数を入力します。(可視セ…

選択中のセルの文字列に右側nセル分の文字列を連結する

タイトルが長いです。なんのこっちゃ。という感じですが、タイトルのとおりです。 数値の入ったセルと単位の入ったセルが隣同士に並んでいて(普通によくある状況ですね)、とある事情で一つのセルに数値と単位を一緒に入れる必要があり、かつデータが多かっ…

GUIDを調べる

注:今回の記事は少々推定が含まれます GUIDはプログラム(など)を識別するための世界で唯一の識別子(32桁の16進表記〔128bit〕で表す)です。世界で唯一というくらいですから、世界のどっかで集中管理していると思われがちですが、そうではなく、世界中の…

参照設定を自動で行う

前回、参照設定の手間なくマクロを使う方法として、参照設定なしでインスタンスを生成する(CreateObject)方法について熱く語りましたが、今回はもう一つの方法である「参照設定を自動で行う」についても漏れなく勉強しておきたいと思います。 参照設定をマ…

参照設定なしでインスタンスを生成する

よくよく考えれば、マクロを使う前に参照設定をして下さい・・・と言うのは、家に来られたお客様に「お茶はセルフサービスです」といっているようなものです。これからは参照設定しなくても使えるコードを掲載していきます。 お客様が参照設定しなくても(参照…

色んなプログラミング言語をやりたい・・・・・・やりたいよぅ(雑記-3)

こんにちは、永遠の黒歴史 好天です。今回は雑記です。 ☆JavaScriptやりたい、C#もやりたい・・・VBAだけではなく色んな言語をやってみたいのが本音です。・・・が、そこそこの年齢になってくると、悲しいかな何かを始める前に費用(時間)対効果があるのかないの…

EXCEL表をTableタグ(HTML)に変換する 其の弐

前回、エクセルの表をHTML(Tableダグ)に変換するという勉強をしましたが、あとから文字の水平位置くらいは指定できたほうがいいんじゃね?と思ったので、今回は前回のコードを改良し、見出し以外の文字の水平位置を指定できるようにしました。 前回の…

Round関数の戻り値が違う?(ワークシート関数とVBA関数の違い)

Round関数が返す値はVBA関数とワークシート関数(俗に言うEXCEL関数)で違います。EXCELでのRound関数はご存知のとおり、引数で指定した桁数で四捨五入を行うものですが、VBAでは偶数丸め(ISO丸め、銀行丸めなどとも呼ばれる)という処理を行います。 具体…

エクセルでどんなことがしたい?(雑記-2)

エクセル素人研究室室長の好天です。('ω')ノ今回はちょっとした雑談です。 ・エクセルでやりたいことは千差万別エクセルで何をどうしたいかは、人によって、さらに状況によって千差万別だと思うので、当ブログに記載しているようなガベージなマクロは使…

同じ文字を下方向へnセル分貼り付ける

例えばこんな文字がクリップボードにあります。 これをアクティブセルから下方向にnセル分貼り付けるマクロを作ってみました。 アクティブセルから下方向に123セル分貼り付けてみます。マクロを実行したあとに表示されるInputBoxに「123」を入力しOK。 こ…

EXCEL表をTableタグ(HTML)に変換する

HTMLで表(Tableタグ)を記述するのは、結構骨の折れる作業です。はてなブログでは視覚的に作表する機能がありませんので、地道にHTMLで記述する(または、はてな記法で記述する)しかありません。そもそもHTMLエディターにしたって、表作成には特化していな…

CSV形式でクリップボードにコピーする

今回は、選択した範囲のデータをCSV形式にしてクリップボードへコピーするマクロを作ってみました。こんな感じです。 CSV形式でコピーしたい範囲を選択し、マクロを実行します。 こんな感じでCSV形式でコピーされます。 メモ帳などに貼り付けて、拡張子を.cs…

インスタンスの生成について

前回は外部ライブラリを参照設定する方法を説明しました。今回は外部ライブラリのオブジェクトを使ってコーディングする方法を書いてみたいと思います。 まず、外部ライブラリのオブジェクトは参照設定するだけでは使用できないので、NEWキーワードを使って…