• 締切済み

競艇オッズの抽出

初めて質問いたします。失礼があればお許し下さい。 なお、エクセルは初心者です。 1、競艇予想ソフトを購入したのですが、3連単方式で全120通りある買い目の内、予想ソフトで36通りに絞り込みます。 2、ソフトから指定された買目(BOX指定)をエクセルに入力します。 A B C D E F G H I J K・・・・(セル列) 1 2 3 ,4 5 6, 1 3 5・・・←買目手入力 A B C D E F G H I J K・・・・(セル列) 1 2 3          ←買目並替 1 3 2          ↓ 2 1 3 2 3 1 3 1 2 3 2 1 4 5 6 4 6 5 ・・・ ・・・           ↑ ・・・           ←全36通り 3、競艇WEBサイトからレースのオッズをエクセルにコピペします。 *この時エクセルには下記のように表記されます。(○は配当) A B C D E F G H・・・(セル列) 123 ● 213 ○・・・612 ○ 124 ○ 214 ○・・・613 ○ 125 ○ 215 ○・・・614 ○ 126 ○ 216 ○・・・615 ○ 132 ◎ 232 ○・・・621 ○ 134 ○・・・ 4、2で並替た買目の横(D列)に3のオッズから適応する配当を抽出。  *買目が123なら●、132なら◎を抽出します。 5、指定された全36通りの買目すべてのオッズを抽出し、別シートでオッズの低い順に並べ替えます。 上記作業のうち4の抽出の仕方が解りません。 どなたかご教授願います。 ちなみに当方はマクロについての知識はありません。 マクロが必要な場合はお手数ですが、マクロの貼り付けの仕方も合わせてご教授頂ければ幸いです。 PS:ご存知のとおり競艇はギャンブルです。 気分を害された方がおられるかも知れません。 また競艇における専門用語を使用しております。 何卒お許し下さい。   

みんなの回答

  • trkmq462
  • ベストアンサー率0% (0/0)
回答No.3

ANo.2の解答欄で http://www.geocities.jp/trkmq462/OTTZU.LZH のアドレスを左クリックしないで右クリックして保存ください。

  • trkmq462
  • ベストアンサー率0% (0/0)
回答No.2

VLOOKUP関数を使う。 =IF(A1="","",VLOOKUP(A1,オッズ!$AH$4:$AI$123,2,FALSE)) や =IF(ISNA(VLOOKUP(A1,オッズ!$AH$4:$AI$123,2,FALSE)),"",VLOOKUP(A1,オッズ!$AH$4:$AI$123,2,FALSE)) とかで抽出できますが。 すこし、この書き込みでは説明ができかねる程の内容です。 よろしかったら、次のアドレスに作りました。 EXCELブックをダウンローできます。 ダウンロードした上解凍してご参考になさっては如何でしょうか。 http://www.geocities.jp/trkmq462/OTTZU.LZH ご参考になれば。

参考URL:
http://www7b.biglobe.ne.jp/~trkmq462/kyoutei.html
  • gutoku2
  • ベストアンサー率66% (894/1349)
回答No.1

1-1  36通りの3桁の数字が用意される。 2-1(この表は、Sheet1に作成)  36通りの3桁の数字を、A1セル、B1セル、C1セルに入力(横方向へ入力)  (手入力、1-1データのExcelへの取り込みは不要)) 2-2  2-1で手入力されたデータを、A1セル、A2セル、A3セルにコピペ  (手入力されたデータを、縦方向へコピー)   コピー元のセルを指定  (入力されているセルはA列だけです) 3-1(この表は、Sheet2に作成)  外部データをExcelへコピペ  (A列に3桁の数字、B列に"○" "●" "◎"の3種類の2バイト文字)  (C列に3桁の数字、D列に・・・・・・・) 3-2(この作業を行ってください)  3-1のデータを、下記の様に加工します。  C列はA列の最終の下にコピー、D列はB列の最終の下にコピー  (3桁数字は全てA列に、 "○" "●" "◎"は全てB列に並ぶようにします)  例 A1セル"123" B1セル"●" A100セル"232" B100セル"○"・・・・・。  ※セルは、例ですのでA100等セルに意味はありません 4-1  2-2で作成したデータ(A列に3桁の36通りの数字)に3-2で作成したデータ  と結合します。結合するためのキーは3桁の数字とします。  (以下の作業を行ってください) 4-2  2-2のA1セルに123が入力されているとして、B1に関数を入力します。  B1セルに =VLOOKUP(A1,Sheet2!A:B,2,FALSE) を入力します。  (B1のセルに表示される結果は●になります)  B2以降は、B1セルをコピー&ペーストしてください。 5-1 オッズの低い順に並び替え  (この部分は知識不足で意味がわかりません、オッズ順とは・・・)  (この部分は質問とはなっていないので割愛) こんな感じで質問の趣旨に合っていますでしょうか。

関連するQ&A

  • 巨大なCSVの加工(指定列のみの抽出)について

    巨大なCSVの加工(指定列のみの抽出)について 下記のような構成のCSVファイルがあります。 "ID","a","b","c","d","e","f","g","h","i","j","k","l","m" "0001","a","b","c","d","e","f","g","h","i","j","k","l","m" "0003","a","b","c","d","e","f","g","h","i","j","k","l","m" "0004","a","b","c","d","e","f","g","h","i","j","k","l","m" ・ ・ ・ 例えば、 ここから"ID"列と"c"列と"f"列のみ抽出して新たなCSVファイルで保存。 という処理を行いたいのですが、行数が5000万行近くあり、ファイルサイズが80GB程あるので エクセルはおろかアクセスでも開くことができません。 テキストエディタの秀丸64bit版なら開くことができますが、指定列の抽出方法が分かりません。 秀丸のマクロでもVBSでも良く、また膨大な待ち時間がかかっても構わないので実現する方法について お知恵をお貸しください。

  • エクセルで、データのある行だけを抽出したい。

    エクセルのSheet1にデータが入っており、セルが空白でない行のデータのみを、Sheet2に抽出したいと思っています。 Sheet2にあらかじめ関数を入れておく方法にしたいため、関数について教えてください。 タイムテーブルで予定を管理するような表で、A~Hまでにデータが入っています。 予定を入れる際にはE列には必ず入力をするため、E列が空白でない行のみを抽出したいです。 A|B|C|D|E|F|G|H 月|日|時間|… 11|22|10:00|… 11|22|10:30|… 時間枠は10:00~17:00の30分刻みで、1日15行使用するので、1年で5475行まで使用します。 1行目はタイトル行なので、データは2行目から入力しています。 フィルタオプションで抽出する方法や、それをマクロで登録しておく方法は分かったのですが、あとから予定を追加することがあるため、マクロを実行する度にデータが置き換わると困ってしまいます。 また、抽出したSheet2のI列以降には備考などを入力したいため、やはり後から列がずれると困るため、A~H列に関数を入れておく方法で実行したいと思います。 よろしくお願いいたします。

  • マクロを使ってテキストを抽出したい?

    エクセルのマクロを使ってテキストを抽出したい? ある1つのCSVデータがあります。エクセルで開いてみるとA列からU列までデータがびっちり入っています。 F列の各セルにはテキストを含むhtmlタグや%%NL%%やスペースなどあります。 質問なのですがF列をテキストだけに変換(抽出)したいです。 そのようなマクロを教えていただけないでしょうか?

  • エクセルの名簿抽出貼付けについて

    シート1に名簿があります。 A列    B列    C列 D列  E列  F列  G列  H列 ・・・・ 通し番号 クラス  名前 部活 趣味 部活 趣味 部活 ・・・  D列E列は1年時の部活と趣味 F列G列は2年時の部活と趣味です。 これが縦に100名以上、横には6年分くらい続きます。 で、シート2には A列    C列  D列  E列 通し番号 名前 部活 趣味 の枠だけがあります。およそ40名分の枠です。 そこで、シート1のあるセルに「2」「3」と入れてマクロボタンを 押すと、シート2に「3組の2年時のデータ」の名簿が出来上がる という抽出、コピー、貼付けのマクロを教えてください。 貼付けるのは、名前と部活と趣味だけですが、まず抽出方法が?です。 よろしくお願いします。

  • 抽出した表でデータをカウントしたいのですが・・・

    タイトルにあるとおり、あるデータをオートフィルで抽出した状態で、その抽出結果からデータをカウントしたいのです。 以下のような表があったとします。    A  B  C  D  E   F  G  H  I 1  ○           ○  ○  ○ 2     ○  ○     ○        ○ 3        ○  ○  ○  ○ 4  ○  ○     ○     ○ 5     ○            ○  ○    ○ 6     ○  ○     ○        ○ 7  ○        ○        ○     ○ 8     ○  ○     ○        ○ 9  ○        ○  ○     ○ この表では、仮に各行○が4つとして、ランダムに各列に○が振り分けられています。 A列・4個、B列・5個、C列・4個、D列・4個、E列・6個、F列・4個、G列・4個、H列・3個、I列・2個 という状態です。    A  B  C  D  E   F  G  H  I 1  ○           ○  ○  ○ 2     ○  ○     ○        ○ 3        ○  ○  ○  ○ 4  ○  ○     ○     ○ 5     ○            ○  ○    ○ 8     ○  ○     ○        ○ 9  ○        ○  ○     ○ ある条件でオートフィルによって、抽出した結果が上の表です。 今回の例では6,7行が消えた状態だったとします。 それぞれ、A列・3個、B列・4個、C列・3個、D列・3個、E列・5個、F列・4個、G列・3個、H列・2個、I列・1個 と、いう結果になりました。 このような状態になった表で最下段、この場合9から上に向かって3行分の○をカウントするような方法、または便利な関数はありますでしょうか? 今回の例ですと、最下段から、3行分、5、8、9のそれぞれの列の○をカウントするという感じです。 A列・1個、B列・2個、C列・1個、D列・1個、E列・2個、F列・1個、G列・2個、H列・1個、I列・1個 これが今回の例における求めたい結果です。 抽出してない状態でしたら、OFFSET関数でいけるのですが、抽出した状態からだと私のスキルでは解決できません。 どなたか、ご存知の方ご教示よろしくお願いします^^;

  • エクセルで各行から一つずつセルを無作為抽出する方法

    表題の通りで、エクセルを使って、 A列(A1~A5) B列(B1~B8) C列(C1~C4) D列(D1~D20) E列(E1~E13) … などと、いくつかの行列データ?(各列は同数とは限らない)があった時に A列→A3 B列→B8 C列→C2 D列→D16 E列→E9 … などと、それぞれの列から任意のセルを抽出したいと思います。 このような時、どのようにすればよいでしょうか?? 具体的に、どんな関数を用いれば、実現できるか、 ご存知或いはお分かりの方、教えて下さい。。 またはマクロとやらを組まないとダメでしょうか?? マクロは組んだことがないのですが、もしそれを使うべきとのことでしたら その方法を教えて下さると、助かります。。 どうぞ、よろしくお願いいたします!

  • EXCEL2007 情報抽出 関数

    A~E列それぞれの一つのセルに"1"を入力し、F列にある情報を抽出、 G列のセルに表示させたいです。 行が多いので、IF関数などは使用できませんでした・・・ 何を使用すればよろしいでしょうか・・・? 例) A1~A20 B1~B20 C1~C20 D1~D20 E1~E20 それぞれの列の一つだけに1を入力します。 ・A 5に1を入力 → F5の情報をG1に表示 ・B15に1を入力 → F15の情報をG2に表示 ・C 2に1を入力 → F2の情報をG3に表示 ・D18に1を入力 → F18の情報をG4に表示 ・E9 に1を入力 → F9の情報をG5に表示 行数が多く、複数の関数を試してみても、数の制限にひっかかるのか うまくいかず困っています。どうぞよろしくお願いします。

  • 【エクセル】特定の文字列(番号)の行だけ抽出したい

    現在資料を作っていて、またもや困ったことがあったので教えてください。 特定の文字が含まれる行のデータを抽出するにはどうしたらいいのでしょうか。 具体的にいうと ____|A|B|C|D|E| [01]|F|1|0|3|5| [02]|G|0|2|5|7| [03]|H|0|3|4|8|    中略 [21]|F|0|0|9|6| [22]|G|6|4|5|1| [23]|H|3|3|2|2|    中略 [31]|F|2|2|4|6| [32]|G|5|3|7|9| [33]|H|8|2|6|4|    以下略 *[]の中身は行番号 一番上段のA B C D Eは列の軸 |はセルの区切りを示している のような表でGのBのところ(行番号が10n+2のところのA列)だけのデータを合計したいのです。 つまり上の表でいえば =A2+A22+A32+A42+A52…(=0+6+5+…)ということをしたいのですが 数が600行近くあるので手入力だとかなり面倒くさいのです。 SUM関数を使うのかなとも思いましたが、それでもセルの指定の面倒くささは変わらないし… 何か簡単にできるようにする方法がありましたらご教授お願いします。

  • マクロを使って抽出する

    マクロを使った抽出について教えてください。 A列  B列  C列  D列 番号  区分  氏名  年齢  *区分はA~Pが入ります。  *リスト範囲:A1:D200 セル[F1]に区分(A~P)を入力して実行すると35歳以上を抽出する。 オートフィルタの設定を使わずマクロで実行したいのですが、どのようなマクロを書けばよいのかわかりません。 マクロ初心者で申し訳ありませんが、よろしくご教授ください。

  • リストのデータを重複なしでランダムに抽出する

    シート1に下記のように14種類の名前リストがあります     A 1   A 2   B 3   C 4   D 5   E 6   F 7   G 8   H 9   I 10  J  11  K 12  L 13  M 14  N 上記の名前を下記のように別シートの数列おきの列(行は同一)に重複なしに行毎にランダムに抽出する事が関数で出来るでしょうか?(エクセルは2010です) ちなみに下記は一列おきのセルに抽出した例です   A B C D E F G H I J K L M N O P Q R S T U V W X Y Z AA 1 D   L   K    I    A   M   N    B   H   J    C    F    E   G 2 K   J   M   H    I   G   F    E   D    A    B   N   C    L 3 E   J   A    L   B   M    K   C   N    G    F   D    H   I どなたか教えていただける方がおりましたらよろしくお願いします。 という質問をさせていただき、mike gさんに下記のような回答をいただきました 1.Sheet1 の例えばセル C1 に式 =RAND() を入力して、此れを右に2列(注1参照)ドラッグ&ペースト 2.範囲 C1:E1 を下方にズズーッと(14行目まで)ドラッグ&ペースト 以下は別シート(Sheet2)における操作です。 3.セル A1 に次式を入力して、此れを右方にズズーッと(セル AA1 まで)ドラッグ&ペースト(注2参照)   =IF(MOD(COLUMN(),2)=1,INDEX(Sheet1!$A$1:$A$14,MATCH(SMALL(OFFSET(Sheet1!$C$1,,ROW()-1,14,),CEILING(COLUMN()/2,1)),OFFSET(Sheet1!$C$1,,ROW()-1,14,),0)),"") 4.1行目全体を下方にズズーッと(3行目まで)ドラッグ&ペースト 注1:「右に2列」は別シートの行数が3行の場合で、4行(5行)の場合は「右に3列(4列)」に読み替える。 注2:式中の 2 は「一列おき」の場合で、二列(三列)おきの場合は 2 を 3(4) に書き替える。 これで完璧に出来たのですが 実際にはSheet2のセルH6から15列おきに抽出したいのです。 15列おきは出来たのですが、セルH6から抽出を始めるにはどの部分を変更すれば良いのでしょうか? どなたか教えて頂ける方がおりましたらよろしくお願いします。