Excel VBA質問箱 IV

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

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


35210 / 76732 ←次へ | 前へ→

【46724】Re:アプリケーション定義オブジェクト定義の方法
回答  りん@とおりすがり  - 07/2/13(火) 12:26 -

引用なし
パスワード
   初心者 さん、こんにちわ。

>○sheet1からsheet2へ1行ずつコピーしていく。
>sheet1のa4:c4をコピーし、sheet2のF4からH4へペースト。
>sheet2のD4をコピーし、sheet2のM4へペースト。


>●sheet1のデータ
>   A   B   C   D    E  F
>4  a   b   c   文字1
>5  d   e   f   文字2      
>6  g   h   i   文字3
>7  j   k   l   文字4
>●sheet2のデータ
>   F   G   H    ・・・   M  
>4  a   b   c          文字1
>5  d   e   f          文字2      
>6  g   h   i          文字3
>7  j   k   l          文字4

エラーの原因は、Resize(範囲の変更)で行数を0にしているからです。
Range("A4").Offset(a1 - 4).Resize(0, a5).Select


望みのコピーを実行するには
>○sheet1からsheet2へ1行ずつコピーしていく。
>sheet1のa4:c4をコピーし、sheet2のF4からH4へペースト。
>sheet2のD4をコピーし、sheet2のM4へペースト。

Sub test1()
  'そのまんま
  With Application.ActiveWorkbook
   .Worksheets("Sheet1").Range("A4:C4").Copy Destination:= _
     .Worksheets("Sheet2").Range("F4")
   .Worksheets("Sheet1").Range("D4").Copy Destination:= _
     .Worksheets("Sheet2").Range("M4")
  End With
End Sub


Sub test2()
  '行番号に変数を使うなら
  Dim RR As Long
  RR = 1
  With Application.ActiveWorkbook
   .Worksheets("Sheet1").Range("A" & RR & ":C" & RR).Copy Destination:= _
     .Worksheets("Sheet2").Range("F" & RR)
   .Worksheets("Sheet1").Range("D" & RR).Copy Destination:= _
     .Worksheets("Sheet2").Range("M" & RR)
  End With
End Sub

こんな感じです。

1 hits

【46719】アプリケーション定義オブジェクト定義の方法 初心者 07/2/13(火) 11:00 質問
【46724】Re:アプリケーション定義オブジェクト定義... りん@とおりすがり 07/2/13(火) 12:26 回答
【46742】Re:アプリケーション定義オブジェクト定義... 初心者 07/2/13(火) 18:13 質問
【46743】Re:アプリケーション定義オブジェクト定義... 初心者 07/2/13(火) 18:22 お礼

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