Excel Excelのファイル名に日時を付けて保存するマクロ Excelで作業しているとき、大きな間違いに気付いて以前の内容に戻したいことがありますが、上書き保存してしまっていて戻せないケースがあります。 そこである程度、作業したらファイル名を変えて保存するという方法があります。 エクセルで「上書き保... 2015.03.16 Excel
Excel アクティブシートの数式を削除して値にするマクロ Excelのファイルを他人に渡すときに数式を見られたくないケースがあります。 まず、前に照会したPDFで保存する方法があります。 また、数式を値に置き換える方法があります。範囲を選択してコピーし「形式を選択して貼り付け」で「値」を選択すれば... 2015.02.21 Excel
Excel Excelで年齢を求める方法 Excelで年齢や経過年数を求める場面があります。 DATEDIFという関数を使えば求められますが、なぜかExcelはこれを標準の関数とはしていないようです。 以下、A1セルに生年月日、B1セルに基準日が入力されているとします。 このとき、... 2015.02.16 Excel
Excel 配列を利用してセルを取得し別のシートにセット 前に複数のセルに値をセットするときは配列を使うと処理が速いということを紹介しましたが、今回はその応用です。 「あるシートのデータを加工して別のシートにセットする」という場合があります。 下で紹介するサンプルは、あるシートのデータを一気に配列... 2015.01.20 Excel
Excel VBAでScreenUpdatingをFalseにすると処理が速い ExcelのVBAの処理の高速化の一つにScreenUpdatingをFalseにする方法があります。 通常、いずれかのセルの値を変更するとそれを表示するために画面が更新されます。これに時間がかかります。「Application.Scree... 2014.12.02 Excel
Excel 矩形範囲を配列として取得 Excelのマクロで「複数のセルに値をセットするときは配列を使うと処理が速い」ということを紹介しました。 複数のセル(範囲)に配列を使って値をセットするだけでなく、配列として値を取得することができます。 「arrs = Range("a1:... 2014.10.22 Excel
Excel 「.Calculation」と「.EnableCalculation」のどちらが効果的か Excelのマクロの処理を高速化するために、マクロの実行中のワークシート上の計算を止めるという方法があります。 通常はセルの内容が変われば自動的に計算されます。これを一時的に停止しマクロの実行後に元に戻すという方法です。 二つ方法があります... 2014.10.16 Excel
Excel 複数のセルに値をセットするときは配列を使うと処理が速い Excelでマクロを使って複数のセルに値をセットする場合、通常は次のようにすると思います。 次のサンプルはA1セルからJ10セルまでの範囲に行番号と列番号の積をセットします。九九の表のような感じです。 2014.10.16 Excel
Excel Excelの列番号を英字に変換するユーザー定義関数 「(1,1)」のセルならば「A1」と表示したいのですが、これを行うには、1ならばA、2ならばB、27ならばAAというように、列を英字に変換する必要があります。 ヘルプを調べましたが見付からなかったのでユーザー定義関数を作ってみました。 2014.10.08 Excel
Word Wordで脚注を括弧書きに変換するマクロ 以前、脚注を括弧書きに変換するマクロを紹介しました。 しかし、脚注が長すぎると(255文字超)、エラーになります。 これを改良して、脚注が長くても対応できるようにしました。 次に紹介するマクロの他に、以前、紹介した「長い文字列の置換」「全て... 2014.09.01 Word