数字配列の行・列を逆順に配置する方法

このQ&Aのポイント
  • 数字配列の各数字を行・列全て逆順に配置する方法について解説します。
  • 大規模な数字配列を逆順に配置するためのスピーディな手順をご紹介します。
  • エクセルVBAを使用することで、効率的に数字配列を行・列全て逆順に配置することができます。
回答を見る
  • ベストアンサー

数字配列の各数字を行・列全て逆順で配置したい

下記の様な各列が半角スペースで区切られた4行5列の数字配列があります。 一桁の数字が、ランダムに並んでいます。 <図A> 5 8 0 4 7 1 2 1 9 3 3 0 2 0 4 6 9 3 5 2 各数字を、行・列全て逆順で配置すると下記になります。 <図B> 2 5 3 9 6 4 0 2 0 3 3 9 1 2 1 7 4 0 8 5 今度は例えば、図Aが数字配列が200行30列など大規模になり、 同様に各数字を行・列全て逆順で配置したいとなった場合、 どういう手順を踏めば、スピーディに配置できるでしょうか? 例えばエクセルVBAなど、 スピーディに配置できる方法を(具体的に)を教えていただきたいです。 どうぞよろしくお願いいたします。

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

  • ベストアンサー
  • SI299792
  • ベストアンサー率48% (716/1482)
回答No.1

Excel で画像の様な表とします。 数字は1桁でいいですか。 行数はいくつでもいいですが、列は最大30です。 B1: =TEXTJOIN(" ",TRUE,MID(INDEX(A:A,COUNTA(A:A)-ROW()+1),61-ROW(A$1:A$30)*2,1)) 下へコピペ。 Excel2019 の場合、Ctrl+Shift +Enter で配列数式にして下さい。数式に{}が付きます。 それ以前のバージョンの場合、数字が 2桁以上の場合、VBA の方がいいので、補足に書いて下さい。 列が最大40の場合、 81-ROW(A$1:A$40)*2 の様に増やして下さい。 [列数*2+1]+ROW(A$1:A$[列数」40)*2

sky81183
質問者

お礼

スピーディーに的確な回答をくださって感謝いたしております。 ありがとうございました!!

sky81183
質問者

補足

早速回答くださって、ありがとうございます! 数字は1桁で問題ないです。 また、バージョンもExcel2019で大丈夫です。 今回教えて下さった方法(文字列)には何か、名前がありますか? 「〇〇関数」など・・・ もしあるようでしたら教えていただけませんか?

関連するQ&A

  • 増える数字を配列に全て格納したいのですが

    すいません。phpを勉強中なのですが、以下は可能でしょうか。 ある変数$aaaがあったとします。 $aaaはWhile文の中にあるのですが、数字がランダムでどんどん入ってきます。 (上書きされていきます) それで$aaaに一度でも格納された数字を全て配列に入れたいのですが、どう構文を作ったらよいでしょうか。(while文の外で一度でも入った数字を全て表示したい) 例 3.5.2.18.22.9.・・・ 同じ数字は入りません。 何桁まで続くのか分かりません。 詳しい方いましたらよろしくお願いします。

    • ベストアンサー
    • PHP
  • ランダムに数字の入った列から、ほしい行を見つけ出す関数

    A列とB列に、それぞれランダムに1と2という数字が入っていて、 「A列が2で、B列が1」となっている行だけを知りたい場合、 どうすればいいでしょうか? エクセルかロータスで、それを導き出す式がわかる方、ぜひ教えてください。 表計算ソフト超初心者です。よろしくお願いします。

  • 2行目で数字が入っている列までを1行目で計出したい

    エクセルで質問です。 下記の状態で、F1に、2行目で数字が入力されている列までを1行目で 合計額を出したいです。 計算式はありますか??? 例えばで、下記の例でいうと、「28」を自動集計したいです。 それでいて、次回C2に数字を入れた場合、F1を「34」となるように したいのです。         A  B  C  D  E F         1月  2月  3月  4月  5月 合計 1行目 H25  10  18  6  25   30 「28」 2行目 H26   4  40          44 どなたかわかる方、教えてください。 よろしくお願いします。

  • 下記のようにA列にランダムで出現する数字に対して、B列でその出現間隔を

    下記のようにA列にランダムで出現する数字に対して、B列でその出現間隔を計算する関数ってありますでしょうか?A列の数字が何千行となるため、単純な減算?等ではなく関数でやりたいのですが・・・。 (例) A列 B列  0  0  3  0  0  0  7  4  0  0 10  3  0  0  色々検討しているのですが、うまく行かずに悩んでいます。誰か教えて頂けないでしょうか?。

  • エクセルで似た数字を同じ行に並びかえる方法

    エクセル初心者です。文章だけで説明できるか自信がないですが、どなたか助けてください。 隣接した列に時間とそれに対応した数値が打ち込まれた100行ほどのデータが2つある。 EX、A列(時間:秒)1行=2.003、2行=4.05、3行=8.002…(行が進む  ほど大きくなる)    B列(数値)1行=10、2行=5、3行=4(ランダム)      C列(時間:秒)1行=1.001、2行=2.2、3行=7.9…(行が進む   ほど大きくなるがA列と一緒とは限らない)    D列(数値)ランダム  このような場合に、時間に対応した数値はそのまま(AとB,CとDは連 動)で、時間を似た数字でそろえる(少数点1桁くらいの精度)場合  どのような操作が最も簡便でしょうか?  EX、  A列1行=空欄、C列1行=1.001  A列2行=2.003、C列2行=2.2  A列3行=8.002、C列3行=7.9  イメージがつきにくいと思いますが、補足で説明させていただきます ので、どなたか、私に付き合って、上記のファイル処理を達成させて ください。 実際には、時間と数値の組み合わせが20パターンほどあり、 似た時間で並べて解析したいのですが、一つずつ合わせていくのでは 膨大な時間がかかってしまいそうです。。。 何卒よろしくお願いします。

  • 列に並んだ数字群から一致する数字の行番号を抽出

    下記のように B列に数字が縦に並んでいます。 28.11684736 28.12102177 28.12519803 28.12937616 28.13355614 28.13773798 28.14192168 28.14610723 28.15029464 28.15448391 28.15867503 28.16286801 28.16706285 28.17125955 28.1754581 この数字群から、例えば 28.15448391 に一致する数字の行を見つけて その行番号を抽出するコードはどのように記述したらよいのでしょうか。 番号はA1のセルに置きます。 但し、条件があって Excel2000~Excel2003の全てのバージョンに共通する こと。そして列のデータ数が約10000程度はあることです。どこから 手をつけてよいのか判らないので、よろしくお願いします。 簡単な例では下記でもよさそうですが。より早く求めるには???  A= Range("B65536").End(xlUp).Row I=0 Do I=I+1 Loop until Cells(I,2).value=28.15448391  Range("A1")=I

  • エクセルの検索・関数

    お分かりの方、教えて下さい!! エクセルにて、 A列に13桁の数字がランダムにあり、 C列にも13桁の数字がランダムにあり、 E列には1桁~3桁の数字がランダムにあります。 B列に同じ行のA列の13桁と一致するC列の13桁を見つけ、 そのC列のと同じ行のE列の数字を入れたいのです。 上記の内容が出来る関数を教えて下さい。 分かりにくくてすみませんが、よろしくお願いいたします。

  • A列(10行)とB列(10行)の全ての組み合わせをC列にリストアップしたい。

    何度もすみません。 前回の質問で文字列の組み合わせの方法は理解いたしました! 本当にありがとうございます。 追加で質問になるのですが、タイトルにあるように(※数字は仮です) A列(10行)とB列(10行)の全ての組み合わせをC列にすべて(100行?)リストアップしたいと考えています。 また並び方は A1 A2 A3 ・ ・ ・ B1 B2 ・ ・ というようにしたいです。 このようにするには C列にどのような関数を入れればいいのでしょうか? どうかよろしくお願いいたします。

  • C列の下4桁の数字 「0926」 以下の行を削除するには?

    C列の下4桁の数字が 「 0926 」 以下の行から上へ、 「 Rows(2) 」 までを全部削除するにはどのようなコードになりますでしょうか ? 下記コードの線の中に作成したいと思ってます。 下記例の場合は、「 Rows(2) 」 ~ 「 Rows(4) 」 を削除することになります。 C列の数字は必ず、7桁か8桁です。(上2桁は月数字1~12のためです) 下行へ行くに従って、必ず数字は増えていきます。 何卒、ご教示お願い致します。 --------------------------------- C 数字 4030907 4030914 4030923 4030931 4030940 4030947 --------------------------------- Private Sub 指定数字以下の行を削除() Dim i As Integer On Error Resume Next For i = 1 To Worksheets.Count - 1 '--------- '--------- Next i End Sub

  • A列とB列の値の差から、ほしい行を見つけ出す関数

    お世話になります。 A列とB列に、それぞれランダムに数字が入っていて、 「A列とB列の値の差が、±5.1 以上」である行だけを知りたい場合、 どうすればいいでしょうか? (セルの値は整数だけではなくて、小数点5桁以上の場合もあります。) エクセルかロータスで、それを導き出す関数の式がわかる方、ぜひ教えてください。 表計算ソフト超初心者です。よろしくお願いします。