エクセルVBAの質問です。行削除のマクロは多数検索できるのですが、列削除のマクロがなかなかヒットしません。2列ごとに2列削除(最初の削除はコラムCとDになります)を削除するマクロをどなたかご教授いただけないでしょうか。そのまま使えるマクロをご提供くださった方にお気持ちですが、500ポイント差し上げたいと思います。宜しくお願いいたします。

回答の条件
  • 1人2回まで
  • 登録:2009/07/10 23:55:32
  • 終了:2009/07/11 09:21:23

回答(3件)

id:jccrh1 No.1

jccrh1回答回数111ベストアンサー獲得回数192009/07/11 00:22:20

ポイント500pt

次のマクロでできるかと思います。

とりあえず10*2列分削除です。

Sub 列削除()
  Dim 削除列  As Range
  Set 削除列 = Range("C:D")
  For I = 1 To 9
    Set 削除列 = Union(削除列, Range("C:D").Offset(0, I * 4))
  Next I
  削除列.Delete
End Sub
id:tororosoba

早々にご連絡いただきまして有難うございました。希望通りの結果になりました!

2009/07/11 09:19:01
id:HALSPECIAL No.2

HALSPECIAL回答回数407ベストアンサー獲得回数862009/07/11 00:25:59

ポイント300pt

C1のセルをアクティブにした状態で、次のマクロを実行してください。


Option Explicit

Sub DeleteColumns()
    
    Do Until ActiveCell.Value = ""
        Range(ActiveCell, ActiveCell.Offset(0, 1)).EntireColumn.Select
        Selection.Delete Shift:=xlToLeft
        ActiveCell.Offset(0, 2).Activate
    Loop
    
End Sub

<|
id:tororosoba

有難うございました。申し訳ありませんが、一番最初にご提供いただいた方へ500ポイント差し上げることになります。

2009/07/11 09:19:05
id:ken3memo No.3

ken3memo回答回数242ベストアンサー獲得回数742009/07/11 00:36:19

ポイント300pt

マクロ記録してみました。( http://www.ken3.org/vba/excel-help.html )

Option Explicit

Sub Macro1() 'マクロ記録してみた。

'

' Macro1 Macro

' マクロ記録日 : 2009/7/11 ユーザー名 : kk2009

'

'

Columns("C:D").Select

Application.CutCopyMode = False

Selection.Delete Shift:=xlToLeft

Columns("E:F").Select

Selection.Delete Shift:=xlToLeft

Range("G7").Select

End Sub

Sub CUT_CD_EF() 'マクロ記録を元に Columns("列:列").Delete しただけ。

Columns("C:D").Delete '削除すると列が詰まる

Columns("E:F").Delete 'ので、左から消すとわかりにくいかも。

End Sub

Sub CUT_GH_CD() '右から消したほうが、左に詰まっても影響が少ないのでは?

Columns("G:H").Delete '初めGHを削除

Columns("C:D").Delete '最後にCDを削除

End Sub

なんか、変だなぁと思いつつ、こんな感じです。。。

外していたらスミマセン。

id:tororosoba

有難うございました。いつもウェブサイト拝見させていただいております。申し訳ありませんが、一番最初にご提供いただいた方へ500ポイント差し上げることになります。

2009/07/11 09:19:09

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません