アプリ版:「スタンプのみでお礼する」機能のリリースについて

EXCELシート上で、セルを範囲指定してコピー後に、コピー先のセル上で[形式を指定して貼り付け]を選択し、画面上の[行列を入れ替える]のチェックボックスに印を入れて実行すると、行と列が入れ替わった表が貼り付けられますよね。

このような操作を何千回も繰り返す必要があるのですが、今は1回ずつキーボード操作を行っているのでかなり時間がかかっています。

自動的に上記の操作が実行されるようにする方法はありませんでしょうか?

ちなみに、「行と列を入れ替えたいセルはすべて同じシート(ブック)上にあります。」

例)(EXCEL上で次のように並んでいます)

【現状の並び方】
氏名1
住所1
電話1

氏名2
住所2
電話2
 ・
 ・
(上記のようなセルデータが数千つづく)

【上記のデータを次のように並べたいのです】
氏名1 住所1 電話1

氏名2 住所2 電話2
 ・
 ・
(数千つづく)


何か方法がありましたら、お教え願います。
どうぞ宜しくお願いいたします。

A 回答 (2件)

関数を使ったほうが早いような気がします。


さきのがA列(A1:A99)として
B1=INDEX($A$1:$A$99,(ROW()-1)*3+COLUMN()-1,1)
としてD1まで列方向にコピー後、行方向にコピー
上記の数式の範囲をコピーして、別シートにでも「編集」「形式を選択して貼り付け」「値」で確定させる。
    • good
    • 1
この回答へのお礼

即座のご回答、本当にありがとうございます!
早速試してみます。
これでできたら凄く効率化されると思います!!

お礼日時:2005/12/14 16:28

マクロを使った一例を・・・。


当然範囲等は修正する必要があります。
さっぱり分からない!というのであれば#1さんの方法の方が良いかと思い
ます。

Sub test()
Dim i As Long
With Sheets("Sheet1")
For i = 1 To 31 Step 3
.Range("A" & i & ":A" & i + 2).Copy
.Range("D65536").End(xlUp).Offset(1).PasteSpecial Paste:=xlAll _
, Operation:=xlNone, SkipBlanks:=False _
, Transpose:=True
Next i
End With
End Sub
    • good
    • 1
この回答へのお礼

詳細なご回答、本当にありがとうございます!!
私はマクロは全く理解できないため、せっかく式までご提示いただいたのに、どう適用してよいか現時点では良くわかりません・・。ただセルやシート名を実際のものに置き換えてやってみます。

お礼日時:2005/12/14 16:33

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A