• ベストアンサー

エクセルを使っての方法

エルセルなどを使用して、宝くじロト6過去のデータを入力して、 これから6個の数字を決めるときに、過去に出てしまった1等の数列を避ける方法を教えてください。

noname#84083
noname#84083

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

  • ベストアンサー
  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.3

過去にどんな組み合わせが当選したかということは、次の組み合わせとは何の関係もありません。だから仰るようなsheetを作ったところで無意味です。 それはさておき、どうやって作るかでしたよね。 [1]まず過去に当選した組み合わせを全部入力した表をつくらなくちゃいけません。 worksheetの上から11行目から下にこの表を作りましょう。 横に6つの数を、左から大きい順に並べることにしましょう。例えば過去の当選組み合わせを三つ入れたら こんな感じになる:(|はセルの境界線です。)  A   B   C   D   E   F  41| 30| 26| 11|  5|  2|  39| 31| 30| 22| 20|  8|  42| 35| 33| 31| 28| 12| さらに、桁数を揃えるために全ての数に900(3桁以上なら何でも良いんですが)を加えて文字列に変換したものを第H~M列に作ります。 そして第G列には、これらをくっつけた文字列を作りましょう。つまり11行目に         G                   H      …    M |=CONCATENATE(H11,I11,J11,K11,L11,M11)|=FIXED(A11+900,0)|…|=FIXED(F11+900,0)| を入れて、12行目以下全部、これと同様にします。(やり方は知ってますよね。11行目のG~Mまでを選択しておいて、11行目M列のcellの右下端に出る小さい四角を下へドラッグすれば良いのです。) これで、過去の当選番号のデータベースのできあがりです。 [2]数字の組み合わせを適当に選ぶ部分を作りましょう。 一番上の行の横6つのセルには、Excelが適当に数字を作ってくれる式を入れましょう。A列に式をいれて、A~F列は全部同じにします。    A       …    F =int(rand()*43+1)|…|=int(rand()*43+1)| とりあえずこれで良いでしょう。同じ数が2つ以上出てしまうこともありますが、それはあとで処理することにします。これで6つの数字(1から43のどれか)が並びます。 (勿論、これらのセルに、自分がこれと思う数字を書き込むようにしても良いのです。) [3]数の組み合わせをチェックする部分を作りましょう。 2行目の横6つのセルには、「その列の、1行目の数字が、6つの数字のうち何番目に大きいか」を表す数値を表示させてみましょう。 =RANK(A$1,$A$1:$F$1)| =RANK(B$1,$A$1:$F$1) |…|=RANK(F$1,$A$1:$F$1)| 5行目の横6つのセルに、1行目の数字を大きい順に並べ替えたものを出しましょう。このために、ちょっと準備がいります。 3行目の横6つのセルには、左から順に1から6まで数字を入れます。  A  B  C  D  E  F  1| 2| 3| 4| 5| 6| 1行目の横6つのセルでは、1行目の何列目を持ってくれば良いかを計算します。 =MATCH(A3,$A$2:$F$2,0)|=MATCH(B3,$A$2:$F$2,0) |…|=MATCH(F3,$A$2:$F$2,0)| で、5行目の横6つのセルに、1行目の数字を大きい順に並べ替えたものを出します。 =INDEX($A$1:$F$1,A4)|=INDEX($A$1:$F$1,B4)|…|=INDEX($A$1:$F$1,F4)| さらに5行目に、         G               H      …    M |=CONCATENATE(H5,I5,J5,K5,L5,M5)|=FIXED(A5+900,0)|…|=FIXED(F5+900,0)| を入れてやれば、5行目のG列にはデータベースと同じ形式の文字列が出ますね。 もし1行目の6つの数字に重複があれば、5行目のG列は#N/Aになります。 6行目のG列に、この文字列と同じものがデータベースにあるかどうかを調べる式を入れてみましょう。 =MATCH(G5,G11:G1000,0) もし同じものがあれば数値を、なければ#N/Aを表示するはずです。  これでひとまずできあがりです。どこか関係のないセルに0でも入力してReturnかEnterを押してみてください。すると一行目が再計算されて、別の数字の組み合わせが出てきます。 「5行目G列が#N/Aではなく、6行目G列が#N/Aである」という場合にはオッケーということです。つまり一行目の6個の数字には重複が無く、しかも、過去の当選番号のデータベースにも該当がない。 [4]ではオッケーの場合に、1行目のG列にそう表示するようにしましょう。 1行目のG列に =IF(AND(NOT(ISERROR(G5)),ISERROR(G6)),"おっけー","だめ") と入力すれば良いですね。  はい。もう一度念を押しておきますが、こんなことしても何の意味も無いのですよ。過去に当選した番号が当たりにくいということは全くないのですから。  大変な手間ですが、鰯の頭も信心からと申します。がんばって下さいな。

参考URL:
http://oshiete1.goo.ne.jp/kotaeru.php3?q=53334
noname#84083
質問者

補足

以前ロト6の確率の説明をしてくれた方ですね。有難うございました。闇雲に数字を選らばなくなりました。なんせ一回分の金額が大きいものですから。あの後、毎週同じ金額分、同じ数字を買い続けています。お陰さまで結構いい金額の当たりが出たのですよ。これからも買い続けていきます。 ≫ 過去にどんな組み合わせが当選したかということは、次の組み合わせとは何の関係もありません。 いえいえ、避ける数字配列を決めるだけでなく、これから買おうとした(選んだ)数字が過去の一等にあったのだと判るのも嬉しいじゃないですか。 ただ、今回の説明難しすぎます。と言うか私の頭では理解できません。ただ過去の数字配列を入力しておき、新しい配列を記入するだけで勝手にコンピュータが作動してくれるものかと思っていましたので。 エクセル自体使った事もなく、使い方もまだ理解していません。すみません。

その他の回答 (6)

  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.7

>お答えして頂いた書き込みの >Public Function >  ~ >End Function >までをコピー&ペーストしていいのでしょうか? その通りです。 Public Function ~ End Function がユーザー定義関数になります。VBA側の仕掛けはこれだけです。 説明が足らず、すいませんでした。うまく機能するといいですが。

  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.6

チョッと仕掛けを作っておけばPCが教えてくれます。こんな表を作ってみました。   | A | B | C | D | E | F |  ―┼―――┼―――┼―――┼―――┼―――┼―――┼  1| 10| 11| 29| 30| 32| 43| 1行目は予想値入力場所  2| あり| あり|   | あり|   | あり| 2行目は有り無しを表示  3|   |   |   |   |   |   |  4|  1|  5| 10| 15| 16| 43| ここから下は過去データ  5| 11| 15| 20| 25| 26| 42| どんな順番でも可  6| 21| 25| 30| 35| 36| 41|  7|  2|  6| 10| 16| 26| 40|  8|  3|  7| 11| 15| 16| 39|  9| 34| 38| 12|  5|  6|  8| (1)A4~F9に過去のデータを入れます。 (2)A1~F1には予想する好きな数字を入力します。 (3)ユーザー定義関数を作ります。(これが仕掛けになります)  メニューでツール→マクロ→Visual Basic Editor でVBE画面に移り、  VBE画面のメニューで挿入→標準モジュール で標準モジュールを挿入し、  開いたコードウインドウに下の関数をコピーして貼り付けます。   (手順を追っていけば可能と思います) Public Function 過去データ照合(myData As Integer) As String   Dim rg As Range '過去データの値   過去データ照合 = ""   For Each rg In Range("A4:F9")     If rg = myData Then       過去データ照合 = "あり": Exit Function     End If   Next End Function (4)シートに戻り、A2~F2にはユーザー定義関数を使った式を設定します。   A2に =過去データ照合(A1) と入力し、F2までコピーします。   これで入力値が過去データにあれば『あり』と表示されます。   『あり』と表示された時、条件付書式でセルの色を変えたりするとよりはっきりします。 ご参考に。

noname#84083
質問者

補足

≫ メニューでツール→マクロ→Visual Basic Editor でVBE画面に移り、VBE画面のメニューで挿入→標準モジュール で標準モジュールを挿入し開いたコードウインドウに下の関数をコピーして貼り付けます。 お答えして頂いた書き込みの Public Function   ~ End Function までをコピー&ペーストしていいのでしょうか?

  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.5

 Excelのようなspread-sheetシステムは自分でちょっとした道具を作るのにとても便利です。そしてNo.3で書いたのは、「過去に出てしまった1等の数列を避ける」ことを自動的にやってくれるような道具の作り方。  ですから、一度作っちゃえば、あとは過去の当選データを追加していくだけです。 No.3の訂正: > 1行目の横6つのセルでは、1行目の何列目を持ってくれば良いかを計算します。 は > 4行目の横6つのセルでは、1行目の何列目を持ってくれば良いかを計算します。 の誤りでした。  でも使ったことがないとなると、アノ説明じゃ難しいかも。もし「使ったことはないけど持っている」という事なら、ともかく試しに入力してみて下さいな。

noname#84083
質問者

補足

すぐ回答いただきまして有難うございます。 来週あたりPCに精通している先輩に会いますので、このページを見せて教えてもらおうと思っています。 また、常時接続でないPHS接続をこのまま続けたら、来月はいったい幾らになるか?という質問もしてみたいと思っています。(Just kidding you) なんせ3週間で114時間(1時間約514円)ですからねえ。

  • comv
  • ベストアンサー率52% (322/612)
回答No.4

こんばんは! ロト6の数値列を知らないので不確かですが 先頭の数値に0(ゼロ)も来るようでしたら 入力は予め文字型(書式設定 文字列)に しておいた方が確かでしょう!(過去データも含め) その上で例えばA1に6桁の数字があるとして B1に =IF(ISERROR(MATCH(A1,過去1等の範囲,0)),"","●") 過去1等の一覧表に同値の記載があれば●が表示される式です。 <余談> 6桁の内、5桁まで同順同値であるものもチェックするには 例えば C1に =IF(COUNTIF(過去1等の範囲,REPLACE($A1,1,1,"?")),"■","") D1に =IF(COUNTIF(過去1等の範囲,REPLACE($A1,2,1,"?")),"■","") E1に =IF(COUNTIF(過去1等の範囲,REPLACE($A1,3,1,"?")),"■","") F1に =IF(COUNTIF(過去1等の範囲,REPLACE($A1,4,1,"?")),"■","") G1に =IF(COUNTIF(過去1等の範囲,REPLACE($A1,5,1,"?")),"■","") H1に =IF(COUNTIF(過去1等の範囲,REPLACE($A1,6,1,"?")),"■","") としておけば、何れかの5桁が順番も含め揃っている場合 何れかにマークが表示されます。

noname#84083
質問者

補足

せっかく答えていただいたのですが、私の頭では、、、。 ロト6の数字配列は、01~43までの数字を6個選んだものです。

  • taropoo
  • ベストアンサー率33% (34/103)
回答No.2

基本的な事かもしれませんが ロトって過去に出た当選数列はそれ以降当選にしない事になってるんですか?

noname#84083
質問者

補足

いいえ、そうではなく、6個の数字が全く同じものが、再度選ばれる事はないだろうという私の勝手な思い込みです。 でも、やっぱり全く同じものが6個も揃わないと思うのですが、、、。

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

まず、過去の当選結果を一覧にしなければなりませんね。 つぎに任意の方法で作成した6個の値の要素が過去の当選と比較し、 該当があれば「再抽出」を繰り返す、でしょうね。 比較のポイントは1~9までの1桁の値を「01」から「09」とすること。 抽出した6個の要素を昇順(または降順)に整列させること。 12桁の文字列で比較することを回数分のループにすることでしょうね。 でも、31までの数値が該当の回の当選者が多いところを見ると 何らかの「年月日」で申し込みしている人が多いのかな、という気がします。

関連するQ&A

  • ロト6を買ったのですが、当選番号の見方がちょっと分かりません。

    ロト6を買ったのですが、当選番号の見方がちょっと分かりません。 一等は数字が全部当たった場合ですよね? 二等は数字が一つ外れた場合、三等は二つ外れた場合…という事になるんでしょうか? あと、宝くじ売り場でロトやナンバーズの当選確認もして貰えるのでしょうか?

  • エクセルでnCr (組み合わせ)の作成方法

    どなたかご存じでしたら回答願います。 ミニロトとロト6をエクセルを使用して予想に利用しております。 その中で知りたいのは、下記の場合のエクセルVBAのソースです。 ●知りたいこと。 (1)ミニロトの場合は、31個から5個全てが一致すると一等ですが、  「25個から5個選択した場合の組み合わせ(25C5)」作成方法 (2)ロト6の場合は、43個から6個全てが一致すると一等ですが、  「24個から6個選択した場合の組み合わせ(24C6)」作成方法。 ●入力 (1)ミニロトの場合は、下記のように5×5マスに重複しない数字が入っています。   数字は毎回変わります。   1   2 5 6 7 10 4 11 13 15 8 9 17 21 28 14 16 18 20 25 19 22 23 24 27 (2)ロト6の場合は、下記のように6×4マスに重複しない数字が入っています。   数字は毎回変わります。   1   2 5 6 7 19 10 4 11 13 5 22 8 9 17 21 28 23 14 16 18 20 25 24 ●出力   VBAを実行すると、新シートにそれぞれ、25C5又は、24C6の全組み合わせが出力される。 【注意事項】    ・使用しているエクセルは2010です。 以上、ご回答よろしくお願いします。

  • 「宝くじ」についてのの3つ質問

    1.ジャンボ宝くじの1等の当選確率は、どのくらい? (ロト6は知っているけど・・・) 2.大量(購入金額百万単位)に購入する方法は? (「ジャンボ宝くじ」でも「ロト6」でもok) 3.ロト6の当選金の上限が4億というのは、 法律で決まっていると聞いたことがあるけど、 4億という数字になにか根拠がある? 以上、よろしく!

  • エクセルでnCr (組み合わせ)の作成方法

    どなたかご存じでしたら回答願います。 ミニロトとロト6をエクセルを使用して予想に利用しております。 その中で知りたいのは、下記の場合のエクセルVBAのソースです。 ●知りたいこと。 (1)ミニロトの場合は、31個から5個全てが一致すると一等ですが、  「25個から5個選択した場合の組み合わせ(25C5)」作成方法 (2)ロト6の場合は、43個から6個全てが一致すると一等ですが、  「24個から6個選択した場合の組み合わせ(24C6)」作成方法。 ●入力 (1)ミニロトの場合は、下記のように5×5マスに重複しない数字が入っています。   数字は毎回変わります。   1   2 5 6 7 10 4 11 13 15 8 9 17 21 28 14 16 18 20 25 19 22 23 24 27 (2)ロト6の場合は、下記のように6×4マスに重複しない数字が入っています。   数字は毎回変わります。   1   2 5 6 7 19 10 4 11 13 5 22 8 9 17 21 28 23 14 16 18 20 25 24 ●出力   VBAを実行すると、新シートにそれぞれ、25C5又は、24C6の全組み合わせが出力される。 【注意事項】    ・使用しているエクセルは2010です。    ・エクセルの”combin関数”について知りたい訳ではありません。 以上、ご回答よろしくお願いします。

  • エクセルでnCr (組み合わせ)の作成方法

    どなたかご存じでしたら回答願います。 ミニロトとロト6をエクセルを使用して予想に利用しております。 その中で知りたいのは、下記の場合のエクセルVBAのソースです。 ●知りたいこと。 (1)ミニロトの場合は、31個から5個全てが一致すると一等ですが、  「25個から5個選択した場合の組み合わせ(25C5)」作成方法 (2)ロト6の場合は、43個から6個全てが一致すると一等ですが、  「24個から6個選択した場合の組み合わせ(24C6)」作成方法。 ●入力 (1)ミニロトの場合は、下記のように5×5マスに重複しない数字が入っています。   数字は毎回変わります。   1   2 5 6 7 10 4 11 13 15 8 9 17 21 28 14 16 18 20 25 19 22 23 24 27 (2)ロト6の場合は、下記のように6×4マスに重複しない数字が入っています。   数字は毎回変わります。   1   2 5 6 7 19 10 4 11 13 5 22 8 9 17 21 28 23 14 16 18 20 25 24 ●出力   VBAを実行すると、新シートにそれぞれ、25C5又は、24C6の全組み合わせが出力される。 【注意事項】    ・使用しているエクセルは2010です。    ・エクセルの”combin関数”について知りたい訳ではありません。 以上、ご回答よろしくお願いします。

  • 宝くじのロト7やロト6の当選金額についての質問で

    最近ネットバンクを作ったことをきっかけでネットバンク上で宝くじ(ロト7やロト6)を購入しております。そこで当選金額についてなのです。 (1)キャリオーバーとか数十億になっている事も多くありますが、ロト7にしてもロト6にしても番号を7つまたは6つを選んで1口購入して1等の当選が1人であればキャリーオーバーしている金額も含め全額をもらえるのですか? (2)ロト7は1等4億で最高8億、ロト6は1等1億で最高4億と宝くじサイトにあるのですが、1等の当せん額と最高当選額が違うのはなぜなのですか? (3)更にですが、私は選んだ数字を1口ずつ購入しているのですが1口購入するのと複数口購入するのでは何が違うのですか? (4)ロトの当選金額は税金はかからないのですか? 宝くじサイトの説明を読んでもよくわかりません。 宜しくお願いします。

  • ロト宝くじ(のようなもの)の確率問題

    厳密には違いますが、ロト宝くじのようなゲームの確率問題についてお教え下さい。 1~43の数字の中から好きな数字を重複なしで6個選びます。 その後同じく1~43の数字の中からn個の当選番号が選ばれます。 ただしロト宝くじと違いここで選ばれるn個の番号は重複する場合があります。 (n個の当選番号全てが「1」となる可能性がある、ということです) 最初に選んだ6個の数字がいくつ当たったかによって1等、2等、と決まっていきます。 この場合1等(6個全て当たり)から7等(6個全てハズレ)の、それぞれの確率はどのように出せばいいのでしょうか? なおn >= 6として想定して下さい。

  • Excelで乱数を使って並べ替え?

    Excel2000使ってます。 宝くじ(ロト6)当選予想ソフトを作ろうと思っています。 * 6×6の表に抽出した36の数字を入力し各行・列ごとに乱数を使って並べ替える方法。又は36文字全てを並べ替える方法がわかりません。 どなたか教えて下さい。よろしくお願いします。

  • ロト6の売場

    よろしくお願いします。 この度3件の宝くじ売場でクイックピックを使ってロト6を購入しました。 一枚が三等に当選したのですが、ロトの右下の数字(発券機)が同じ券で5等も3本当選していました。 他にもニヤピンがかなり多く、今後もこのお店で買いたいと思うのですが、数字で検索をかけても出てきません。 どうにか買ったお店を調べる方法は無いでしょうか? 店ごとに分けて持っておけばよかったです… ご回答よろしくお願い致します!

  • エクセル2002を使用してロト6分析

    宝くじのロト6の出現数をエクセルで分析してみたいと思ってます。数字同士の相性について分析してみたいのですが、過去の当選結果からある数字、例えば6が出たときに8が出ることが多ければ多いほど相性が良いと言うふうにある条件によってその結果をわかりやすく整理していく場合、これを関数をつかってうまくデータ化することなんて可能でしょうか?ちょっと無理っぽい質問で申し訳ありませんが、どなたかよろしくお願いします。