• ベストアンサー

Exelの表を以下のように全行組み替えたいと思いますが、手作業では大変

Exelの表を以下のように全行組み替えたいと思いますが、手作業では大変です。 そこでマクロを作って作業をさせたいのですが、どのように記述すればよいでしょうか? (現状の表組)※左の数値がレコード数です。 1|A| |C| | |B| |D| | 2|E| |G| | |F| |H| | (このように整形したい表) 1|A|B|C|D| 2|E|F|G|H| このレコードが何百と下に並んでいる状態です。

この投稿のマルチメディアは削除されているためご覧いただけません。

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

sub macro1()  dim r as long  r = range("B65536").end(xlup).row  with range("C1:C" & r & ",E1:E" & r)   .formular1c1 = "=IF(RC1="""","""",R[1]C[-1])"   .value = .value  end with  range("1:1").insert  range("A:A").autofilter field:=1, criteria1:="="  cells.delete shift:=xlshiftup end sub とか。

その他の回答 (2)

  • web2525
  • ベストアンサー率42% (1219/2850)
回答No.3

元の表の形式はどっち?

hisashi65
質問者

補足

すいません、わかりにくかったですね。 Bの方となります。

  • hige_082
  • ベストアンサー率50% (379/747)
回答No.1

マクロの記録で記録したものです こんなことがしたいのでは? Sub Macro1() ' ' Macro1 Macro ' マクロ記録日 : 2010/5/10 ユーザー名 : hige_082 ' ' Columns("A:A").Select Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _ TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _ Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _ :="" & Chr(10) & "", FieldInfo:=Array(Array(1, 1), Array(2, 1)) Columns("C:C").Select Selection.TextToColumns Destination:=Range("C1"), DataType:=xlDelimited, _ TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _ Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _ :="" & Chr(10) & "", FieldInfo:=Array(Array(1, 1), Array(2, 1)) End Sub 参考まで

関連するQ&A