Excelで選択範囲内の罫線の太さを変えるマクロ

Excelで困ることの一つと言えば凝った表です。罫線の太さが細かく調整されていると見た目がいいです。一方、メンテナンスが面倒になります。太さが混在していると非常に醜いです。
シンプルな表ならば一括して太さを指定し直せばいいのですが、罫線が不要な部分にもセットされてしまいます。
そこで、罫線がある部分だけを対象に太さを一括して変えるマクロを考えました。 (さらに…)

Excelで連番を入力する方法

表を作成した際に連番を入力するケースはとても多いです。
単に「何番目か?」とか「何件あるか?」ということを知るためにセットする以外にも意味があります。表計算ソフトとして使う場合、並べ替えをすることがあります。あらかじめ連番をセットしておけば、この連番で並べ替えをすれば最初の状態に簡単に戻すことができます。
連番を入力する方法としてマクロを使う方法とオーソドックスな方法をいくつか紹介します。「1,2,3,…」という連番を縦に入力するという前提です。Excel2007で確認しました。 (さらに…)

西暦年月日を挿入するマクロ

Wordには今日の日付を挿入する機能があります。
メニューの 挿入 - テキスト - 日付と時刻 を選択します(Word2013の場合)。
デフォルトではキーボードショートカットとして「Ctrl+;」(Ctrlキーを押しながらセミコロンキー)が割り当てられています。
しかし「日付と時刻」ダイアログが表示され、表示形式を選択する必要があります。またファイルによっては言語の選択が英語になってしまう場合があります。
私は西暦年月日だけを挿入したいので不便です。
マクロを作りました。 (さらに…)

PowerPointで差し込み印刷

Wordには差し込み印刷という機能がありますが、PowerPointにはありません。
VBA(マクロ)を使ってExcelのデータをPowerPointに差し込んで保存する方法を考えました。
一応、動きましたので、自分のメモとして残しておきます。
PowerPoint2013、Excel2013で確認しました。 (さらに…)

Excelで印刷時に文字がはみ出さないようにする方法

Excelで「折り返して全体を表示する」を適用している場合、画面上ではセルに収まっている文字が印刷するとはみ出して印字されないというケースがあります。
環境によるのかもしれませんが、これは困ります。ページ設定で縮小するとダメなようです。 (さらに…)

Excelのワークシートの最下行と最右列を取得

Excelのマクロでデータがセットされている最も下の行を求める場面はよくあります。
ワークシートにA1セルを起点(左上)とする一般的な表がある場合、
Cells(Rows.Count, 1).End(xlUp).Row
とすることで取得できます。
Cells(Rows.Count, 1)はワークシートのA列の最も下のセルを表します。Excel2013ならば1048576になります。
End(xlUp)はCtrlを押しながら上向き矢印を押したのと同じ効果があります。つまり最も下のセルから上に向かってデータがセットされているセルを探します。
Rowで行番号を表します。
これならば万が一、表の左端に空のセルがあっても求められます。
最も右の列を求めるのも同様です。

まとめると次のようになります。

最も下の行番号
Cells(Rows.Count, 1).End(xlUp).Row

最も右の列番号
Cells(1, Columns.Count).End(xlToLeft).Column

なお範囲を取得するにはCurrentRegionを使う方法もあります。

複数のWord文書に対して文字列置換

フォルダを指定し、その中のWord文書に対して、文字列の置換をするマクロです。
まず置換前の文字列と置換後の文字列を入力します。
その後、フォルダを選択します。
実行されるとファイルを開き置換を行い上書き保存します。これを繰り返します。 (さらに…)

「エンジニアが1時間未満で解くべき五つの問題」をVBAで解く

今年、流行った「五つの問題」を今頃、知りました。
色々な言語での解答が発表されていますが、おそらく誰もやらないであろう、VBAで挑戦してみました。
私がVBAの最大の弱点だと思うのが配列。ところがこの「五つの問題」はどれも配列を使わないと解けません。これに苦戦しました。 (さらに…)

VBAで順列

VBAで配列を与えると全ての順列を返すユーザー定義関数を紹介します。
JavaScriptの配列関連メソッドをVBAのユーザー定義関数に | You Look Too Cool
で紹介したユーザー定義関数のうち「splice」「push」「concat」が必要です。 (さらに…)

全てのシートの名前を配列で取得するマクロ

開いているExcelブックのすべてのシートの名前を配列で取得するマクロです。
これ自体は意味がないですが、他のマクロに組み込んで使えると思います。
Excel2013で確認しました。 (さらに…)

古い記事

タグ

カテゴリー

最近の投稿

最近のコメント

固定ページ

アーカイブ

stabucky

写真

メタ情報