Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


33111 / 76734 ←次へ | 前へ→

【48847】Re:成功しましたが、止まらないです!
発言  Jaka  - 07/5/11(金) 11:06 -

引用なし
パスワード
   > Do
> d = Cells(n, 1)
    ↑
  この書き方だと、現在アクティブになっているn行1列目のセルということになります。

> If d = "1" Then Exit Do
> t = r + 2
> m = m + 2
> Worksheets("sheet1").Select
   ↑
  ここと
> Range(Cells(r, 3), Cells(t, 3)).Select
> Selection.Copy
> Worksheets("sheet2").Select
   ↑
  ここでシートを選択し直していますが、
  dの値は、Sheet2のn行1列目のセルという事になりますが、
  その辺は、大丈夫なのでしょうか?
> Cells(s, 1).Select
> Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
>    False, Transpose:=True
> r = r + 5
> s = s + 1
> n = n + 1
> Loop

いちいちシートやセルを選択しなくても、
どのブックの中のどのシートのどのセルなのかを明確に指定したやれば、
いちいち選択しなくても、値の書き込み、取得やセルのコピペができます。


Cells(n,m)
何もしていない場合、現在アクティブになっているシートのCells(n,m)を指します。

Sheets("Sheet3").Cells(n,m)
現在アクティブになっているブックの「Sheet3」のCells(n,m)を指します。

WorkBooks("Book5.xls").Sheets("Sheet4").Cells(n,m)
Book5.xlsブックの「Sheet4」のCells(n,m)を指します。

ThisWorkBook..Sheets("Sheet2").Cells(n,m)
このマクロが書いてあるブックの「Sheet2」のCells(n,m)を指します。

ブックやシートオブジェクトは変数にセットして使うこともできますが、
まずは基本を博して下さい。
過去ログ等にも色々ありますから、色々コードを見てみると良いと思います。
(実は手抜き、うまく説明できそうに無い。)

「F8」を押すことで1行づつコードの進行ができますから(ステップ実行)
これで、今どこで何をやっているのかを確認してみてください。

19 hits

【48840】'Range'メソッドは失敗しました:'Global'オブジェクト 李洪千 07/5/10(木) 23:13 質問
【48841】Re:'Range'メソッドは失敗しました:'Globa... りん 07/5/11(金) 0:19 回答
【48844】返信ありがとうございました。 李洪千 07/5/11(金) 7:31 回答
【48846】成功しましたが、止まらないです! 李洪千 07/5/11(金) 8:47 回答
【48847】Re:成功しましたが、止まらないです! Jaka 07/5/11(金) 11:06 発言

33111 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free