VBAの勉強を始めてみた

色々試しています。

プログラミング

結合セルを擬似的に単一セルのように扱うには?(Tips-1)

VBAの勉強を始めてみて、これまでに気づいたことや、習得したこまごました知識などをメモっておこうと思います。 下の画像のように、A1:C3を結合したセルがあります。 見た目は一つのセルのようですが、実際には9個のセル(A1,B1,C1,A2,B2,C2,A3,B3,C3)が含…

コピーしたときに自動的に入るTabを、それぞれ好きな文字に変えてクリップボードへ転送する

通常、エクセルで下図のようなデータ範囲をコピーし、メモ帳などに貼り付けるとこんな感じになると思います。 これは、Tabによってフィールドごとに区切られた状態でコピーされるからであり、逆に言えば、これを再度エクセルに貼り付けることも可能な訳です…

リストを使用して新規フォルダを大量に作成する

今回はエクセルのリストを使用して、Windowsの新規フォルダを大量に作成してみようと思います。新規フォルダの作成には、MkDirステートメントを使用します。 MkDir Path:=新しく作成するフォルダ名 MkDirステートメントは引数に指定された文字列をフォルダ名…

VLOOKUP関数的にファイルリネームを行う

VLOOKUP関数的に、いわゆる「表引き」でファイル名のリネームを行うファイルリネームソフト(もどき)を作ってみました。 目次 概要 プログラムの流れ コード本体 引数なしのDir関数の振る舞い お好みで機能を変更する 概要 例えばこのように、とある商品の…

大量のシートから目的のシートを探して表示させる方法

エクセルを使って仕事をしていると、一つのブックにシートが多くなりすぎて、目的のシートを探すのに手間取ってしまうことがあります。自分で作った資料ならまだしも、余所から頂いた資料であればなおさらです。1秒を争うような場面で、目的のシートが中々…

複数シートを1シートにまとめる

今回のコードは前回作ったコードの出がらしリサイクルです。前回は複数ブックのデータを一つのブックのシートにまとめるというものでしたが、今回は複数ブックという部分が、複数シートに変わっただけです。 前回の記事を投稿して、1日経って、冷静になって…

現在アクティブなブックのシートに、複数ブックのデータを挿入貼り付けする

今回は、マクロを使い始めた人がまず最初にやってみそうなことを、やってみようかと思います。 やりたいことは単純に下記のようなこと。 a.xlsx、b.xlsx、c.xlsx、d.xlsx、・・・・・・z.xlsxのように行数が不定な複数ブックがあり、 これらのデータを、a.xlsxのデ…

検索に一致したセルのみを選択する

選択範囲内で、該当する文字が入っているセルのみを選択する簡単なマクロです。セルを選択させたのち、セルの背景色を変えるまでをマクロにしてみようと思ったんですが、ふと思い直し、選択するのみにとどめてみました。 ためしに、選択範囲内で3の入ってい…

自分の資質の低さと向き合うためには(雑記-13)

(前回の続き) もともと人の脳なんて不確実なものであり、それに加えて私は資質が足りない・・・・・・ので、徹底的にそれを補う方法を模索しなければなりません。(卑屈に聞こえてしまうかもしれないけれど、実際にそうなのでしょーがない) 私は、時々刻々と変…

プログラミングの魅力について稚拙ながら語ってみる(雑記-12)

VBA生命科学研究所 所員の好天です(*v.v)プログラミングを生業としていない者の視点から、プログラミングの魅力などについて、稚拙ながら語ってみたいと思います。私が感じている、プログラミングの魅力をいくつか書き出してみます。 意図通りに動いたとき、…

三つ以上の部分一致条件で絞り込みを行う(オートフィルター不使用)

オートフィルターを使った絞り込みでは、引数に配列を指定しても、三つ以上の部分一致条件での絞り込みができませんでした。なので、オートフィルターを使わずに三つ以上の部分一致条件で絞り込みをさせてみたいと思います。まあ、検索に一致しない行を非表…

三つ以上の完全一致条件で絞り込みを行う(オートフィルター使用)

前回の「飛び飛びのセルからデータをコピーするマクロ」を使用し、コピーした複数データを検索条件(OR条件)として絞り込みを行うマクロを作成してみたいと思います。 目次 完全一致条件に使用する文字列を取り込む 取り込んだ完全一致条件を元に絞り込みを…

飛び飛びに選択したセルからデータをコピーし、飛び飛びに選択したセルに貼り付ける

For Each NextとDataObjectを利用した簡単なマクロを作ってみました。 目次 飛び飛びに選択したセルのデータをコピーし、飛び飛びに選択したセルに貼り付ける コードの説明 応用1:結合セルからデータをコピーし、単一セルにデータを貼り付ける 応用2:単…

EXCEL表をTableタグに変換する 其の参(文字の水平位置を反映する)

先日、ブログのデザインテーマを「Bordeaux」から「Natural」へ変更した際、「Bordeaux」ではデフォルトでTableの見出しの文字が中央揃えだったのに対し、「Natural」では見出しも含めてすべて左揃えとなってしまい、過去記事が意図しないレイアウトになって…

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

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

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

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

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

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

「PageTopへ戻る」ボタンを1ステップで実装してみる

// 500) { //ボタンを出現させるスクロール位置をpxで指定 topBtn.fadeIn(); } else { topBtn.fadeOut(); } }); topBtn.click(function () { $('body,html').animate({ scrollTop: 0 }, 300); //完了までの時間をミリ秒単位で指定 return false; }); }); // …

Gistを貼り付ける

ソースコードの表示を見やすくカスタマイズシリーズ(番外編)です。 今回は、Gist貼り付けをやってみます。 Github.Gistのアカウントの作成から、ブログへの貼り付けまで10分ほどで出来ます。考えるな、感じろの精神でとりあえずやってみましょう。 Github.…

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

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

ブログを見やすくする:ソースコードを見やすくカスタマイズ ~JavaScriptの利用~

前回は、はてな記法とMarkdown記法を使ってソースコードの表示をカスタマイズしてみましたが、今回はJavaScriptを使ってカスタマイズしてみたいと思います。といっても、自分でJavaScriptを書くわけではなく、シンタックス・ハイライト用に配信されている既…

ブログを見やすくする:ソースコードを見やすくカスタマイズ ~はてな記法、Markdown記法~

今回は、「はてな記法」と「Markdown記法」を使ってソースコードの表示を見やすくカスタマイズしてみたいと思います。 はてな記法とは? はてな記法を使うと、HTMLの知識がなくても、見出しやリストといった、ブログを書く上で便利な表現を簡単に行うことが…

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

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

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

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

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

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

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

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

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

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

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

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

GUIDを調べる

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

参照設定を自動で行う

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