既存のリスト(単一列)を取得し、各エントリの間に行を追加する方法

既存のリスト(単一列)を取得し、各エントリの間に行を追加する方法

列 A に 100 都市のリストがあり、そのリストを取得して各エントリをさらに 3 回複製する方法を考えています。Offset を使用してこれを実行しようとしましたが、失敗しました。

私がやりたいことの視覚的な例を挙げると、次のようになります。

New York
Paris
London
Berlin

これを次のように変換します。

New York
New York
New York
New York  
Paris
Paris
Paris
Paris
London
London
London
London
Berlin
Berlin
Berlin
Berlin

これに対する VBA 以外の数式の作成についてご助力いただければ幸いです。

答え1

これを試して:

=INDEX(A:A,CEILING(ROW()/3,1))

ここに画像の説明を入力してください

300 行目までコピーし、列をコピーして、特殊 > 値を貼り付けて値を保持し、基になる数式を削除します。

答え2

@teylyn、あなたの回答は素晴らしいです。ありがとうございます!

1 行目にタイトルを追加したかったので、あなたの数式を使用しましたが、いくつか調整を加えました。うまくいきました!

=INDEX(A$2:A$7,CEILING(ROW(A1)/4,1))

新しい機能を教えてくれてありがとう。:)

関連情報