• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:行列データ?の文字列操作についてです。)

行列データの文字列操作について

steel_grayの回答

  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.1

可能だと思います。 Javascriptのリファレンスを見ながらがんばってください。http://www.tohoho-web.com/js/index.htm 以下はサンプルです。 <html> <head> <title></title> <script type="text/javascript"> function sample(){ var t1 = document.getElementById('intext').value; var rec = t1.split(/\n/); // 改行で分割、行の配列化 for(i=0;rec[i];i++) { rec[i]=rec[i].split(/\t/); // TABで分割、列の配列化 if(rec[i][2]) { // B列があれば A列と比較、入れ替え if(rec[i][1] > rec[i][2]) { var temp = rec[i][1]; rec[i][1] = rec[i][2]; rec[i][2] = temp; } } } rec.sort(function(a,b){return a[1]-b[1]});// 並び替え // 以下、結果出力 var output=''; for(i=0;rec[i];i++) { output += rec[i][1]; if(rec[i][2]) { output += '-'+rec[i][2]; } output += '('+rec[i][4]+', '+rec[i][3]; if(rec[i][5]) { output += ', '+rec[i][5]; } output += ')'; if(rec[i+1]) { output += ', '; } } document.getElementById('outtext').value = output; } </script> </head> <body> <p><textarea id="intext" cols="100"></textarea></p> <p><input type="button" value="実行" onclick="sample()"></p> <p><textarea id="outtext" cols="100"></textarea></p> </body> </html>

pikopiko29
質問者

お礼

早速ありがとうございました。 希望していたことがほとんど出来ました。 しかし、19行目のソート?の所だけはエラーが出てしまい上手く作動しませんでした。 ご紹介いただいたリファレンスを見ながら勉強したいと思います。 ありがとうございました。

関連するQ&A

  • excelの文字列の操作について

    A列、C列、E列、G列・・・の1行目にはタイトルが入力されており、 B列、D列、F列、H列・・・には不特定の文字列が入力されており、それぞれ行数も不特定です。 A列、C列、E列、G列・・・の1行目のタイトルはA列にまとめ、B列、D列、F列、H列・・・の文字列はB列にまとめたいです。 下の例の場合だと、C列の1行目のタイトルをB列の下端の左下にあたる(A7)に移動させ、 D列の2行目から入力された文字列を右となりの(B7)に移動させたいです。これの繰り返しです。     A列     B列     C列     D列 1    あ       A       い       2             B                a   3            C                b 4              D               c 5             E                6              F                            ↓     A列     B列     C列     D列 1    あ       A              2             B                   3            C                 4              D                5             E                6              F      7      い      a 8             b 9             c よろしくお願いします。

  • Excelで列の操作の自動化をしたいです

    列、C列、E列、G列・・・の1行目にはタイトルが入力されており、 B列、D列、F列、H列・・・には不特定の文字列が入力されており、それぞれ行数も不特定です。 A列、C列、E列、G列・・・の1行目のタイトルはA列にまとめ、B列、D列、F列、H列・・・の文字列はB列にまとめたいです。 下の例の場合だと、C列の1行目のタイトルをB列の下端の左下にあたる(A7)に移動させ、 D列の2行目から入力された文字列を右となりの(B7)に移動させたいです。これの繰り返しをマクロで自動化したいです。     A列     B列     C列     D列 1    あ       A       い       2             B                a   3            C                b 4              D               c 5             E                6              F                            ↓     A列     B列     C列     D列 1    あ       A              2             B                   3            C                 4              D                5             E                6              F      7      い      a 8             b 9             c よろしくお願いします。

  • <文字列マクロについて>

    <文字列マクロについて> 皆さま お力を貸して下さい。 初心者で、何もわからず書いておりますがすみません。 下記の2つのマクロを教えて下さい。 ?横に並んだ「ある行」に在るデータを「列」に変換し、  指定した数だけ並べる    あいうえお    ←A1セルからE1まで5列(これは状況により変わる)       ↓(マクロ実行:3行同じ数だけ並べるという指定)  あ        →A1セルから下にひたすら、同じ文字が続き順に並ぶ  あ  あ  い  い  い  う  う        →A1セルから下に並べる(3行は指定できれば別の数字にも変えたい  う  え  え  え  お  お  お ?規則的に並んだデータのまとまりをセットで移動する。  例だと5つの塊(これは変数とおきたい)    あ A              a  い B              b  う C               c   え D               d  お E              e    ↓(マクロ実行)  あ  い  う  え  お  A  B  C  D  E      ・  ・  ・  ・    a b c d e    

  • VBスクリプト 文字列操作

    VBスクリプト(全くの初心者です)について教えてください。 例えば "test.csv" にて 1,a 1,b 1,c 1,d 2,a 2,b 3,d 3,e 4,a 4,f 4,g のファイルがあるとします。 最初の1列目の数字(文字列)の行数は可変です。 最終的に "test2.csv" 1,a,b,c,d 2,a,b 3,d,e 4,a,f,g というファイルを作りたいのですが,ずばりコードを教えていただけないでしょうか。

  • エクセルの文字列の検索に関して

    また、エクセルに関しての質問です。 例えば  A B C D 1あ 1 2い 2 3う 3 4え 4 5お 5 6か 6 7き 7 8く 8 このような漢字で文字列が縦に入力されていて、  A B C D E 1あ 1   お 5 2い 2   う 3 3う 3 4え 4 5お 5 6か 6 7き 7 8く 8 このようにD列にある文字に対してA列にある文字で該当する文字を発見し横のBセルにある番号を取ってくるということがしたいです。 この場合だとD1は「お」なので、A列の上から見ていくとA5に「お」があるので、B5の数字「5」をEに入力といったような具合です。簡単なように見えますが、複数の文字列を横断的に検索することができません。 誰か詳しいお方お教え願います。

  • エクセルでの連番の処理

    お世話になります。 1行目に入力されたデータをルールに沿って2行目以下にどんどん追加していきたいと思っています。 まずD1、E1のセルに数字を入れます。 例:D1に3、E1に25 を入れてマクロを実行するとD列の2行目以下に3,4,5,6…25と連番で入力出来るようにしたいのです。 この例ではD列は24行目まで入力されています。そこで2行目から24行目までのA,B,C列にはそれぞれ1行目のA,B,C列と同じデータを入力します。なおA,B,C列は数字、文字列どちらもあります。空白の場合もあります。 この状態でA~E列の1行目のデータを変更し、仮にD1を2、E1を15としたとします。ここで再度マクロを実行すればD25に2、そして順に連番が入りD38に15が入るようにします。 同時に25行目から38行目までのA,B,C列にはそれぞれ1行目のA,B,C列と同じデータを入力します。 これの繰り返しです。 つまり2行目以下のD列で空白の行以下にどんどん連番を入れていく具合です。 前提としてD1、E1は整数しか入りません。またE1の数字はD1より大きいです。ただD1,E1に同じ数字が入った場合、その数字の1行分だけが入力されるようにします。 以上の処理が自動化できるマクロはできますか? アドバイス願います。

  • Perlでの文字列操作について

    Perlを使用しての文字列操作について教えてください。 たとえば以下のような数字とアルファベットが順に並ぶ文字列があるとします。 11A4C555D67B114B9423C アルファベットは1文字ですが、数字は何個でも連続で並びます。 この文字列を「数字アルファベット」の部分で分割し、配列に格納したいのですが、うまくいきません。 @array=('11A','4C','555D','67B','114B','9423C') どなたか教えてください。よろしくお願いいたします。

  • Excelで1列のデータを5列に振り分けする

    Excel2003でA列に1行にあるデータ(半角英数字)を 次のシートに、1行ずつコピーして、それを5列に振り分けするというマクロを作りたいです。 (ただし、コピーは2つずつの時もあります。) 元データ ●A列 B列 C列  1  2  3  4  5  ・  ・ 加工後 ●A列 B列 C列 D列 E列   1   1   2   2   3   3   4   4   5   5   上記のような感じです。ただデータは数字のみでなくて、英数字です。 Excelのマクロは全くの初心者で大変困っています。 どうぞよろしくお願いたします。

  • EXCEL・ 2つの列内にある文字データで一致するものを検索する方法

    始めまして 例えば 下記の様にA列内の文字データ(数字ですが実際には文字列) とB列内の文字データが同じものを検索する方法です。 C列に同じデータがあれば○と表示する方法でもいいです。 この場合123は検索対象となるので1行目のC列又は2行目のC列に 印か文字を表示させたいです。    A列 B列 1行 123 111 2行 456 123 3行 789 222 よろしくお願いします。

  • エクセルのデータから一致するデータを出したい

    エクセルの表から一致するデータに対応する指定列のデータを表示させたいのですがどの関数で設定すればよいのか教えて下さい。 A2からDの30までの表(実際には4000列以上) 1行は見出し A列は1~のナンバリング B列は商品コード(同じコードが複数ある)    ・昇順に並べてある C列は日付け    ・2番目に優先で昇順に D列は文字列 探したい商品コードをB1入力、それに対応するD列の文字列の昇順のトップをD1に表示させたい この内容で伝わるでしょうか オートフィルターで選ぶのも考えたのですが、入力した時その列のある列のデータが瞬時に見たいのです。 よろしくお願いします。