Excel VBA質問箱 IV

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

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


26025 / 76732 ←次へ | 前へ→

【56043】Re:列の削除について
発言  kanabun  - 08/5/30(金) 11:10 -

引用なし
パスワード
   ▼クリシュナ さん:
おじゃまします

> 以下のとおりマクロを組みましたが、下の行へ一向に進みませんでした。

↓を使って行番号を指定するなら、これをFor〜Nextの中に入れないと
  j はLoopのなかで増加してませんよ。
>j = j + 1

もっとも、Loop変数に i を使っているから、それをそのまま使えば済むはなし
とも思われます。
> For i = 2 To Ws2.Cells(65536, 1).End(xlUp).Row

あと、手順を変えて、

 → 1行目で 最終列を求め、その右となりの列に
   各行の 最終データを Copyする

という風にも 考えられませんか?

Sub Try1()
 Dim LastCol As Long
 Dim wkCol As Long
 
 LastCol = Range("IV1").End(xlToLeft).Column '1行目の最後の(日付)データの列番号
 wkCol = LastCol + 1       'その右隣り(この列に最後のデータを転記)
 
 Dim LastRow As Long
 Dim c As Range         '最終行まで 対象列にデータ書き込みLoop
 LastRow = Range("A65536").End(xlUp).Row
 For Each c In Range(Cells(2, wkCol), Cells(LastRow, wkCol))
  c.Value = c.End(xlToLeft).Value
 Next
 
 Range("B1", Cells(1, LastCol)).EntireColumn.Select
 If MsgBox("転記が完了しました。データ列を削除しますか?", _
   vbOKCancel) = vbOK Then
   'Selection.Delete '指定列を削除
 End If
 
End Sub
2 hits

【56036】列の削除について クリシュナ 08/5/30(金) 1:10 質問
【56040】Re:列の削除について ひげくま 08/5/30(金) 9:14 発言
【56060】Re:列の削除について クリシュナ 08/5/31(土) 11:08 質問
【56043】Re:列の削除について kanabun 08/5/30(金) 11:10 発言
【56059】Re:列の削除について クリシュナ 08/5/31(土) 10:57 お礼

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