[Tips] 馬番を枠番に変換する
Posted on :| コメント (0) | トラックバック (0)
「馬番を枠番に変換するには?」
「うまく変換できないので、枠番情報を含めて欲しい」
たまにこういう声を聞きます。しかし、吉田が示すコードを見れば「え? こんなに単純なの?」と思わず声を上げることでしょう。 プログラミングはシンプルに設計し、実装することが肝心です。
■馬番から枠番を取得するコード(VB6/VBA)
Public Function GetWaku(uno As Long, tou As Long) As
Long
Dim Wak As Long
Select Case tou
Case 1 To 8
Wak = uno
Case 9
Wak = CLng(Mid$("123456788", uno, 1))
Case 10
Wak = CLng(Mid$("1234567788", uno, 1))
Case 11
Wak = CLng(Mid$("12345667788", uno, 1))
Case 12
Wak = CLng(Mid$("123455667788", uno, 1))
Case 13
Wak = CLng(Mid$("1234455667788", uno, 1))
Case 14
Wak = CLng(Mid$("12334455667788", uno, 1))
Case 15
Wak = CLng(Mid$("122334455667788", uno, 1))
Case 16
Wak = CLng(Mid$("1122334455667788", uno, 1))
Case 17
Wak = CLng(Mid$("11223344556677888", uno, 1))
Case 18
Wak = CLng(Mid$("112233445566777888", uno, 1))
End Select
GetWaku = Wak
End Function
■プログラムの解説
コードのポイントは2つあります。
- 枠番は頭数により決まる
- 頭数ごとの枠番のパターン化をいかに簡略化するか?
頭数ごとの枠番のパターンですが、これは頭数ごとに場合分けをして、パターンを定義する方法が簡単です。上記のコードだと、
Select〓Case文を使って頭数ごとに分岐処理しています。
枠番のパターンですが、これは文字列として定義しています。この時のポイントは馬番と枠番を対比させた文字列を定義すると言うことです。
例: 15頭立ての場合
馬番1番 ……枠番 1
馬番2番 ……枠番 2
馬番3番 ……枠番 2
馬番4番 ……枠番 3
……
馬番15番……枠番 8
これをひとつの文字列で表すと "122334455667788" となります。あとは先頭を馬番1番として、
知りたい馬番と同じ位置にある文字列の数字を読み取るだけです。この文字列の読み取りにはmid$を使います。
トラックバック
このエントリーのトラックバックURL:
コメント
- Search
- 最近の記事
- カテゴリー
- 過去の記事
-
- 2011年05月
- 2011年03月
- 2011年02月
- 2011年01月
- 2010年12月
- 2010年11月
- 2010年10月
- 2010年09月
- 2010年08月
- 2010年07月
- 2010年06月
- 2010年05月
- 2010年04月
- 2010年03月
- 2010年02月
- 2010年01月
- 2009年12月
- 2009年11月
- 2009年10月
- 2009年09月
- 2009年08月
- 2009年07月
- 2009年06月
- 2009年05月
- 2009年04月
- 2009年03月
- 2009年02月
- 2009年01月
- 2008年12月
- 2008年11月
- 2008年10月
- 2008年09月
- 2008年08月
- 2008年07月
- 2008年06月
- 2008年05月
- 2008年04月
- 2008年03月
- 2008年02月
- 2008年01月
- 2007年12月
- 2007年11月
- 2007年10月
- 2007年09月
- 2007年08月
- 2007年07月
- 2007年06月
- 2007年05月
- 2007年04月
- 2007年03月
- 2007年02月
- 2007年01月
- 2006年12月
- 2006年11月
- 2006年10月
- 2006年09月
- 2006年08月
- 2006年07月
- 2006年06月
- 2006年05月
- 2006年04月
- 2006年03月
- 2006年02月
- 2006年01月
- 2005年12月
- 2005年11月
- 2005年10月
- 2005年09月
- 2005年08月
- 2005年07月
- 2005年06月
- 2005年05月
- 2005年04月
- 2005年03月
- 2005年02月
- 2005年01月
- 2004年12月
- 2004年11月
- 2004年10月
- 2004年09月
- All Entries
- Comments
-
- 地震とストレージの関係
永ちゃん (03/18)
吉田章太郎 (03/19)
- 地震の影響
永ちゃん (03/12)
吉田章太郎 (03/13)
- 無茶の代償
副将軍 (02/17)
吉田章太郎 (02/17)
- 本年の展望
yodog (01/09)
吉田章太郎 (01/20)
- ノロウィルス感染
永ちゃん (01/17)
吉田章太郎 (01/20)
- 地震とストレージの関係
- TrackBacks
-
- Powered by