@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

ExcelMacro Rangeの使用方法

1
投稿者投稿内容
未記入
会議室デビュー日: 2008/10/06
投稿数: 1
投稿日時: 2008-10-06 15:21
御世話様になります。
 以下の様なマクロを組んでみました。
その中で
 Range("A1510:J1510").Select
 の ”A1510:J1510”を変数にしてセルを移動させたいのですが
 イメ-ジ的にRange(Iy:Ix).selectにしてIy、Ixを For Nextで
 回す様なプログラムの様にしたいのですが。。。。
 Cells(Iy,Ix)では文字変数のdataの場合Errorになってしまいます。
 分かり易い方法が有りましたら何方かアドバシス頂ければと思い
 記述致しました。
因みに下記Macroは有る範囲の行を異なる行へ移す行為
でこの種の行為を何回も繰返したい簡単行為です。

Sub Macro2()
'----------------------------
Range("A1510:J1510").Select
Selection.Copy
Range("A1511:J1516").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
Range("A1517").Select
'------------------------------------

EOF
とりっく
会議室デビュー日: 2008/08/25
投稿数: 1
投稿日時: 2008-12-24 09:37
Range("A1510:J1510")
→ Range(Cells(1510,1),Cells(1510,10))
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2008-12-24 10:20
引用:

未記入さんの書き込み (2008-10-06 15:21) より:

イメージ的にRange(Iy:Ix).selectにしてIy、Ixを For Nextで
回す様なプログラムの様にしたいのですが。。。。


一般的に Cell は Select しないようにした方がパフォーマンスに優れます。
(Select の使用 ・・・ [マクロの記録] 機能に頼りすぎている方に多い)

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
1

スキルアップ/キャリアアップ(JOB@IT)