- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ExcelVBA 連続した定数配列を… その他)
ExcelVBAで連続した定数配列を取得する方法、配列数式的Replaceの使い方、シートのコピー
このQ&Aのポイント
- ExcelVBAを使用して連続した数列を取得する方法について教えてください。
- ExcelVBAで一括して複数の単語を置換する方法はありますか?
- ExcelVBAでシートをコピーする方法についてご教示ください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
VBAは配列処理が弱いため、基本はループ。処理速度が気になるなら、セルの読み書き頻度だけ気をつければ大丈夫です。 また、置換えやコピーは「関数の仕様」なので、教科書どーり使ってあげてください。 以下にざっくり。足りなければ補足質問でどーぞ。 一) VBAに定数配列はないです。 代入頻度を減らすならStatic変数を使うといいです。書き換えを嫌うなら関数化で。 二) 1単語ずつ繰り返しです。 三) いずれも要ループです。 ・三の一 WorksheetFunctionというのもありますが全関数を使えるワケではなく、.Rowはダメです。変に小技を使うよりループした方が安全で早いです。 ・三の二 場合によっては、正規表現(RegExp)が使えます。 ・三の三 Copyはできますが、個別にリネームが必要。 sheets(S1).Copy before:=sheets(1) sheets(1).Name = "しーと1" まぁ、手操作できるコト(記録可能)しか出来ない、くらいの認識でよいと思います。実際そんなもんなので。 詳しく知りきゃ、オブジェクトをおべんきょ。 http://msdn.microsoft.com/ja-jp/library/microsoft.office.interop.excel.sheets_members(v=office.11).aspx
お礼
有り難うございます。 毎度ですが、 Excelの折角の並列処理能力が 活かせないので残念です。