No.3ベストアンサー
- 回答日時:
上記がSheet1のA列として、Sheet2のA1に
=OFFSET(Sheet1!$A$1,(ROW()-1)*3+COLUMN()-1,0)
と入力
B1,C1にコピー後、行方向にコピーしてください。
データが終わった行で再度コピーして、
形式を選択して貼り付けで、値として貼り付ければ終了です。
回答ありがとうございます。
回答の関数を調べるのに没頭してしまい、お礼が遅くなってしまいました。
とても参考になりました、ありがとうございます。No.4の方の回答と同じようで微妙に違うところにエクセルの奥深さを感じました。
No.7
- 回答日時:
色々な案が出ていますが、こんなのはどうでしょうか?
A列をそのままB列、C列にコピーします。そしてA列、B列の先頭にセルを挿入して、その下の情報を下に押し下げて、下記のようにします。
このとき、D列を設けて欲しい行に1をつけます。
3つおきですから、オートフィルで簡単につけれます。
(6つのセル(縦に1xx1xx)を選んで、オートフィルを実行.....xはスペースを意味します)
A---------B-------C--------D
------------------名前1
---------名前1----住所1
名前1----住所1----TEL1-----1
住所1----TEL1-----名前2
TEL1-----名前2----住所2
名前2----住所2----TEL2-----1
住所2----TEL2
TEL2
(-は無視してください。スペースを入れるときちんと表示されなかったので、やむなく「-」を入れました)
以上を終えた後、D列でソートします。
後は不要な行を削除します。
回答ありがとうございます。
私が最初にやろうとしていたのに最も近いやり方でした。
D列を使ってオートフィル&後でソートする
っていう発想が私には足りませんでした。ありがとうございました。
No.6
- 回答日時:
レスが多いのでやめようと思いましたが、「数千行」ということで、これも役に立つかなって思いました。
シートタブのところを右クリックすると、「コードの表示」というのがありますから、そこで、開いた画面に、以下を貼り付けてください。
一応、オプションが付けてあります。
Opt =1 は、1列右に行くという意味です。
0 なら、上書きしてしまいます。
myTopCell は、一番、上のセルが、どこか、ということです。以下では、A1 になっています。
Sub 配列編集()
Dim i As Long
Dim myTopCell As String
Dim Rng As Range
Dim myArray As Variant
Dim Opt As Integer
'オプション-隣の列 Opt 列目に書き出し上書きしない
Opt = 1 '0 なら上書き
'先頭のセル・アドレス
myTopCell = "A1"
'
Set Rng = Range(myTopCell, Range(myTopCell).End(xlDown))
myArray = Rng.Value
Application.ScreenUpdating = False
If Opt = 0 Then Rng.ClearContents
For i = LBound(myArray, 1) To UBound(myArray, 1)
Rng.Cells(1, 1).Offset((i - 1) \ 3, _
Opt + (i + 2) Mod 3).Value = myArray(i, 1)
Next i
Application.ScreenUpdating = True
Set Rng = Nothing
End Sub
回答ありがとうございます。
VB(VBA?)はさっぱりわからないので、これから勉強しようと思います。いろいろな方法があるんですね。
確認はできていませんが、ありがとうございました。
No.5
- 回答日時:
B列にデータがあるとして、A1に「1」、A2に「A1+100」、A3に「A1+10000」(足す数はデータの量に応じて適当に変えてください)と入力し、A1~A3を選択した状態で下にオートフィルすると、1、101、10001、2、102、10002...というふうになると思いますので、そうなったら、A列とB列を選択してソートすれば、名前1、名前2...、住所1、住所2...、TEL1、TEL2...と並ぶはずですので、あとはコピー&ペーストで出来るかと思います。
回答ありがとうございます。
データが増えるとA2、A3をすごい数にしなければならないですが、工夫すればなんとかなるいい例ですね。
全く思いつきませんでした、ありがとうございます。
No.4
- 回答日時:
「Sheet1」のA列にデータがあるとした場合、別のシートに
[A1]セル
=INDIRECT("Sheet1!A"&ROW()*3-3+COLUMN())
という式を入れて下さい。
これを[B1][C1]にもコピーします。
これで1列目に情報が表示されるはずです。
後は必要な分だけ行(下)方向に式をコピーするだけです。
試してみて下さい。
回答ありがとうございます。
回答の関数を調べるのに没頭してしまいお礼が遅くなってしまいました。
とても参考になりました、ありがとうございます。No.3の方の回答と似ているようで微妙に違うところにエクセルの奥深さを感じました。
No.2
- 回答日時:
めんどうだったらなかった事にしてください。
1 2 3 4
A 名前1
B 住所1
C TEL1
だとしたときに
名前1の横のセルA2に=B1、A3に=C1を入力し、
1 2 3 4
A 名前1 住所1 TEL1
B 住所1
C TEL1
↑状態でA2~C4をコピーして、D2以降のセルにペースト。このままではB.C行が消せないので、A2~?4(最後)までのセルをコピーして、同じ位置に形式を選択して“値”をペースト。あとはB,Cの行を消していく。消していくのが面倒ですかね??
早速の回答ありがとうございます。
私も同様に考え、無駄になった行を消してるんですが
なんせデータが数千件あるもんで…
なんとかがんばってみます。
No.1
- 回答日時:
もっと、いいやり方があるかもしれませんが。
まずデータがB列に999行あるとします。そしてA列に1から連番を振ります。(フィル機能を使えば簡単です。)
その状態で、D1セルに1を入れD2に=D1+3と入れそれを縦にコピーします。また、E1セルに2を入れE2に=E1+3としてそれを縦にコピーします。さらに、F1セルに3を入れF2に=F1+3としてそれを縦にコピーします。
そのあと、G1に=vlookup(D1,$A$1:$B$999,2,false)と入れそれをG2セルから縦にコピーします。その後、H1にvlookup(E1,$A$1:$B$999,2,false)としてそれをH2セルから縦にコピーします。さらに、その後、I1にvlookup(F1,$A$1:$B$999,2,false)としてそれをI2セルから縦にコピーします。
すると、GからIの列にご希望のように並びますから、G1からI333までをコピーして、別のシートなどの任意の所に「形式を指定して貼り付け」で「値」を指定して貼り付ければOKです。単なる貼り付けだと、元データを消すとエラーになりますが、「値」で貼り付ければ元のデータは消してもエラーになりません。
参考までに。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【エクセル】元データからの引用 5 2022/04/18 10:22
- Word(ワード) ワードで、任意の文字の前に、通し番号をつけたいです。 2 2022/09/15 02:40
- その他(プログラミング・Web制作) 入力フォームへ、データを自動的に入力するプログラム。どうやって作る? 4 2023/01/16 10:24
- その他(ネットショッピング・通販・ECサイト) yygood.shopと言う所でネットで買い物をしたのですが、、、折り返しのメールの注文内容が無く受 4 2023/06/10 17:54
- メルカリ メルカリについて。 「本人情報」の欄の氏名、住所は変えられないですが、住所一覧」の住所と名前は自由に 1 2022/10/12 00:13
- その他(行政) 市役所の事で質問です。 皆さんがお住まいの役所の事はわかりませんが、今住んでいる市役所には、市長宛に 6 2022/04/24 09:16
- 郵便・宅配 アプリで口座登録をしてキャッシュカードが届き印鑑届を提出するのですが、印鑑届を入れる封筒があり、その 1 2022/11/15 14:59
- Excel(エクセル) エクセルの住所から郵便番号を表示するには 2 2022/09/01 16:18
- 郵便・宅配 焦ってます。 焦ってます。今日封筒をポストに投函しました。 投函してからしばらく経って封筒の裏に自分 4 2023/05/23 12:20
- その他(クラウドサービス・オンラインストレージ) 個人情報保護の件 1 2023/05/18 12:19
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
別シートからの文字を変更
-
エクセルの行の抽出について質...
-
Excel 2019 のピボットテーブル...
-
Excelのセルを飛ばして入力する
-
【マクロ】エクセルにかいてあ...
-
Excelのオートフィル
-
Excel初心者です。 詳しい方、...
-
スプレッドシート クエリ関数 1...
-
MOS365 Excel Expert / Excel R...
-
西暦や和暦の表示をyyyymmdd表...
-
Excel初心者です。 詳しい方、...
-
excelの不要な行の削除ができな...
-
エクセルの数式で教えてください。
-
スプレッドシートの関数VLOOKUP...
-
エクセルでセルに「氏名を入力...
-
エクセルで指定した日付、店舗...
-
【Excel】セル内の時間帯が特定...
-
Excelのグラフ軸について
-
Excel 2019 は、SPILL機能があ...
-
関数を教えて下さい。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイル内にある数字の出現回...
-
Excel関数の先頭に「@」が入っ...
-
エクセルの気味悪い不思議
-
Excel VBAで、実行時にsheet上...
-
表示されている人数だけを数え...
-
他人が作ったマクロの理解
-
Excelの関数について質問です。
-
Excel 集計表
-
エクセル 日時の計算式について
-
Excelの関数に関して質問です。...
-
エクセル:セル内の文字列の下...
-
絞り込み検索
-
エクセルの関数で
-
エクセルの書式設定について教...
-
余分なEXCELファイルに印刷され...
-
VBA 同一シート内での転記の仕方
-
長期休みの関数はありますか
-
Excelの空のセル
-
エクセルで入力してある文を別...
-
Excelのマクロで、セルを結合し...
おすすめ情報