インストラクターのネタ帳

新着記事

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

「vba do while 配列」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。

VBA(Visual Basic for Applications)で配列を処理する際に、Do~Loop文の一種である、Do Whileループを使うコードについて探していた方による検索です。

配列に何らかの処理を行う場合、Do~Loop文よりも、For~Nextループのほうがシンプルに書けるケースが多いはずですが、プログラミング学習の一環として、あえてDo Whileループを書いてみるというのは、アリかもしれません。

続きを読む

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

「excelvba worksheetfunction.sum 別のシート」
「worksheetfunction sum 別のシート range(cells」
といった検索で、このサイト・インストラクターのネタ帳へのアクセスが時折あります。

WorksheetFunctionオブジェクトのSumメソッドに関する、

WorksheetFunction.Sumでアクティブでない別シートの合計を

定番の疑問です。

WorksheetFunction.Sumを使って、アクティブではない別のワークシートの合計を求めるには、どういう書き方をすればいいのか探していた方による検索です。

続きを読む

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

「ExcelマクロでFindしたセルをすべて選択するにはどうしたらいいのでしょうか?」
といったご質問をいただくことがあります。

RangeオブジェクトのFindメソッドで検索を行って、ヒットしたセルをすべて選択したいという要望です。

続きを読む

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

「vba 選択したセルの列を全選択する」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。

Excel VBA(Visual Basic for Applications)で、現在選択されているセル・選択中のセルの、列全体を選択するには、どのようなコードを書けばいいのか探していた方による検索です。

続きを読む

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

VBAでシートを新規ブックにコピーする

「excel vba シートコピー 新規ブック」
「エクセル2010 マクロ アクティブシートコピー 新規ブック」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。

Excel VBA(Visual Basic for Applications)で、シートを新しいブックへコピーするには、どのようなコードを書けばいいのかを探している方による検索です。

続きを読む

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

「vba mergearea count」
「エクセル mergearea count」
といった検索で、このサイト・インストラクターのネタ帳へのアクセスがあることに気づきました。

どこかでExcel VBA(Visual Basic for Applications)の、「MergeArea.Count」というオブジェクト式をご覧になった、その意味を調べていた方による検索でしょうか。

続きを読む

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

「vba シート追加 アクティブにしない」
といった検索で、このサイト・インストラクターのネタ帳へのアクセスがあることに気づきました。

Excel VBA(Visual Basic for Applications)で、シートの追加を行ったときに、その追加されたばかりのシートをアクティブにしない方法を探している方による検索です。

シート追加時に新しいシートがアクティブになるのがExcelの仕様

まずは、あらためてExcelでシートの挿入操作を行ってみてください。

ショートカットキー[Shift]+[F11]でも、[ワークシートの挿入]ボタンを使っても、シートの挿入を行ったときには、新たに挿入されたシートがアクティブになります。

これがExcelの仕様です。

そしてExcel VBAは、そのようなExcel操作を自動化することが主な目的のプログラミング言語です。

ですから、Excel VBAからシートを追加したときにも、追加された新しいシートがアクティブになるのが仕様です。

続きを読む

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

「マクロ アクティブシート以外を選択 array」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。

配列変数を使って、アクティブシート以外のシートをすべて選択するには、VBA(Visual Basic for Applications)でどのようなコードを書けばいいのか、探していた方による検索キーワードです。

そもそも配列を使う必要があるのか、まず考えていただきたいところではありますが、ここでは配列を使ったコードの練習の意味から、そんなマクロをご紹介します。

続きを読む

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

Unionで複数のセルを選択するExcelマクロ

ApplicationオブジェクトのUnionメソッドの簡単な使い方をご紹介しました。

もう少し実際にありそうな例をご紹介します。

条件に合致した複数のセル・セル範囲を選択するマクロです。

続きを読む

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

「excel vba 数式 コピー 元セルを参照しないようにする」
といった検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。

Excel VBA(Visual Basic for Applications)を使って数式をコピーする際に、正しい相対参照の数式が入力されるようにするには、どうすればいいのかを探していた方による検索でしょう。

数式のコピーを、Range.Formulaプロパティを使って行ったことのない方は、そもそもどういう疑問・要望なのかをまず確認してみてください。

Formulaプロパティでコピーすると

例えば、C1セルに「=A1+B1」という数式を入力しておいてから、
  Range("C2").Formula = Range("C1").Formula
というコードを実行してみてください。

同種のデータが同じ列に入力されていることを想定すると、C2セルには「=A2+B2」という数式が入力されてほしいところですが、「=A1+B1」という、C1セルに入力されていた数式がそのままコピーされてしまいます。

続きを読む

人気の一覧系記事 ▼

検索

最近じっくりと読まれている記事