人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

VBA(エクセル)の質問です。
Sheet1の任意行をSheet2にコピーするには?
Sheet2のコピー先は、(入力データの)最下行。ちなみにコピーは、値コピー+書式コピーをしたい。

やりたいのは、Sheet1で管理している案件一覧でクローズ(※1)したものをSheet2に移動していきたいということです。


※1 クローズの判定は、特定セル(完了日)がNULLでないという条件とします。

●質問者: P-mako
●カテゴリ:コンピュータ
✍キーワード:VBA エクセル クローズ コピー セル
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● nitscape
●40ポイント

http://www.google.co.jp/

Google

Sheet1の1?10行目の行データに対し、2列目に値が書き込まれていたら、Sheet2の2行目以降(データが書き込まれていない行)へ値と書式をコピーするという場合は下のようにすればできると思います。このような感じでしょうか?


Sub Macro1()


For i = 1 To 10

Sheets(”Sheet1”).Select

If Cells(i, 2).Text <> ”” Then

Rows(i).Select

Selection.Copy

Sheets(”Sheet2”).Select

Rows(ActiveSheet.Range(”$A$65536”).End(xlUp).Row + 1).Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

End If

Next

End Sub

◎質問者からの返答

ご回答ありがとうございます。

かなり良い感じです。

Sheet1の記入済み行すべてを対象にするために、こんな記述にしました。

ありがとうございます。

---

Sheets(”Sheet1”).Select

Row = ActiveSheet.Range(”$A$65536”).End(xlUp).Row + 1

For i = 1 To Row

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ