[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 2chのread.cgiへ]
Update time : 06/01 11:36 / Filesize : 166 KB / Number-of Response : 630
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

VBプログラマ質問スレ(6.0以前) Part54



1 名前:デフォルトの名無しさん mailto:sage [2008/03/03(月) 23:03:01 ]
ここは Visual Basic 〜6.0 の質問スレです。
質問者は使用しているOS、VBのバージョン、サービスパックのバージョン、
「何がしたくて、どうしたけど、どう困っているのか」を明確に書きましょう。

VB.NETは別物なので専門スレで、VBA、APIの質問もそれぞれのスレで。

○ 質問者の心得
 一.質問する前にMSDNやGoogle、過去ログにも目を通してみる。
 二.VBScript、インストーラーなどはこのスレでOK。
 三.質問は第三者にもわかりやすいよう簡潔かつ具体的に。
 四.荒らしは相手しない。

○ 回答者の心得
 一.答えられない質問は無駄に罵倒せずスルー。無理するな。
 二.代用法を強制しない。
 三.回答する上で必須ではない情報をむやみに聞き返さない。
 四.荒らしは相手しない。
 五.VB情報募集中。
 六.回答は質問者が理解できるよう具体的に。

MSDN Online Japan ホーム
 www.microsoft.com/japan/msdn/default.asp
Visual Studio 6.0 Service Pack 6
 msdn.microsoft.com/vstudio/downloads/updates/sp/vs6/sp6/default.aspx
Google
 www.google.co.jp/

※「まず自分で調べる」クセを身につけよう。

321 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 22:23:53 ]
>>320
ttp://officetanaka.net/excel/vba/speed/s12.htm

322 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 23:21:14 ]
>>321
500万回でMidが5秒って、1回あたり1usじゃん。
+で文字列連結するのをMidに変えたときの恩恵に比べれば、差なんて無いも同じ。

・・・まぁ、俺は常にMid$つかうけどね。

323 名前:292 mailto:sage [2008/05/03(土) 23:44:10 ]
>>321
あまりラベルの低いサイトにリンク張らないように。
それってMid$関数だろ?
俺が言ってるのは関数じゃなくてステートメント。

324 名前:デフォルトの名無しさん mailto:sage [2008/05/03(土) 23:49:57 ]
いいかげん、うざくなってきたな

325 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 00:11:16 ]
うむ

326 名前:319 mailto:sage [2008/05/04(日) 11:33:59 ]
>>320
まあそれはお好きにどうぞw

327 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 17:03:11 ]
なんか以前論争になったときは「変なこという奴だな」と思いつつも黙っていたが、
VBのような言語(つまりCのような設計思想の言語とは違う、と言いたいんだが)で
「組み込み関数」と「ステートメント」を峻別することに意味なんてあるんか?w

確かにMSDNライブラリ(俺の手元にあるのは2001年10月のもの)を見ると、
たとえばMid$ならMid$に関して、「Midステートメント」と「Mid関数」の二つのエントリーがあるが、
二つの説明を見比べれば、「Midステートメント」の方は明らかに「Mid関数」の返り値の型の仕様ついて
詳細な説明をスキップするための便宜上のもの(はっきり言えば煙に巻いて誤魔化している)
に過ぎないように思われるが。

328 名前:デフォルトの名無しさん mailto:sage [2008/05/04(日) 21:36:28 ]
Dim s As String
s = "1234567890"
Mid$(s, 3) = "alpha"
Mid(s, 3) = "beta"

vb6でこーゆーコードをコンパイルして、逆汗したが、
結局両方とも同じように_vbaMidStmtBstr呼んでるだけだたよ。

329 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 05:46:33 ]
ってことはMidで十分ってことだよな。
関数はMid$が常識だろうが。



330 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 09:28:20 ]
フォーム タイトルバーのフォントサイズを変更するにはどうすればいいですか?

フォーム プロパティのフォントサイズを指定すると
置かれている各コントロールのフォントサイズは変わりますが
肝心なタイトルバーのフォントサイズが変更されません

331 名前:デフォルトの名無しさん mailto:sage [2008/05/05(月) 12:55:21 ]
画面のプロパティのデザインで決まっているので、個別のウィンドウで変更することはできません。

332 名前:デフォルトの名無しさん mailto:sage [2008/05/06(火) 20:27:53 ]
WebBrowser1でWebを読み込んで縦スクロールバーをコントロールする方法ないですか?
最初に一番下まで持っていきたいのですが。

333 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 12:10:56 ]
Webを書き換えできる立場にいるなら<a name="hoge"></a>でアンカー付けて読み込む時にURL末尾に#hoge
Webは書き換えられないならフォーカスをIEコンポにしてSendKesとか・・・

334 名前:デフォルトの名無しさん mailto:sage [2008/05/07(水) 15:17:49 ]
>>333
できました ありがとうございます。

335 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 00:06:54 ]
midの話題に便乗して質問
replace関数とmidステートメントの使い分けって
どういう風にしたらよろし?

あとreplace関数で下のようにInStr関数を使って開始位置を設定するのは意味がない?

strHoge = "...hoge"

strFuga = Replace (strHoge, "hoge", "fuga", InStr(strHoge, "fuga", vbBinaryCompare))

336 名前:デフォルトの名無しさん mailto:sage [2008/05/09(金) 00:36:52 ]
>>335
使い分けって全然別物じゃんw
っていうか、だからVBのような言語で関数とステートメントを「使い分け」ることこそ意味がないつーに。

mid:
 与えられたBSTRのバイナリイメージを直接上書きする。
 当然、置き換えられた部分の文字数も、文字列の長さも変わらない。(変えられない)

replace:
 与えられた文字列の中の特定の部分を別の文字列で置き換えた文字列を新たに作成する。
 「置き換えられる」部分文字列の長さと「置き換える」部分文字列の長さは違っていてもかまわない。

337 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 02:50:02 ]
vb6.0でフォームだけ透明化して、ラベルなどはそのまま表示させることって可能でしょうか?
方法があれば教えてください。

338 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 04:27:56 ]
十字キーの↓でラベルを順に選択できるようにしたいのですが、

If GetAsyncKeyState(vbKeyDown) Then
If Label3.ForeColor = Magenta Then
Label4.ForeColor = Magenta
Label3.ForeColor = Yellow
End If
If Label4.ForeColor = Magenta Then
Label5.ForeColor = Magenta
Label4.ForeColor = Yellow
End If
If Label5.ForeColor = Magenta Then
Label6.ForeColor = Magenta
Label5.ForeColor = Yellow
End If
End If

と記述するよりもっと効率がいいやり方はないのでしょうか?

339 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 08:28:01 ]
>>338
効率以前に「他人に意味が通じる文章」を書く方が先決だろう。
というか、推敲する手間を惜しむような奴にプログラマの才能などないと思う。



340 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 12:30:28 ]
>>338
効率もなにも、ひょっとしてそのコードバグってないか?
13、14、15はYellowになるだろ、一回↓キー押しただけで
順ってなんですか?

341 名前:デフォルトの名無しさん mailto:sage [2008/05/13(火) 14:12:33 ]
>>338
訳:カーソルキーの↓キーを1回押すごとにラベルを順番に選択(色を変更)したいのですが、
>>338のコードと記述するよりスマートになるやり方はありませんか?

342 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 00:08:54 ]
>>339
分かりにくくてすみません・・・

>>340
バグってます。
通常の状態をマジェンタ、選択されてる状態を黄色にして、
↓キーを押すたびに選択されているラベルを変えるプログラムをつくりたいんですが、うまく行きません・・・

>>341
そういうことです。ありがとうございます

343 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 02:23:29 ]
ラベルをコントロール配列にでもして、
現在黄色い場所をインデックスとして覚えといて
そいつをカーソルキーでうろうろさせるとか

344 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 03:49:52 ]

◆6月にマネージャパン、月刊アスキー、週刊アスキーの3誌が賞金総額2000万円の「シストレFXグランプリ」を開催
system-trading.jp/news/index.php?cID=3

5月22日より登録受付開始、6月2日よりグランプリ開始の予定。賞金総額2000万円。
  デモトレードの優勝者には賞金三百万円がプレゼントされます。


▼トレード部門
初期資産500万円で、デモ取引のトレード収益を競っていただきます。
www.fx-gp.com/about/

▼賞金総額
■社長特別賞(シストレソフト買取価格) 10,000,000円
●シストレソフト部門賞 1位300万円 2位100万円 3位50万円
●トレード部門賞 1位300万円 2位100万円 3位50万円
●前期MVP賞 50万円
●後期MVP賞 50万円

345 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 08:19:34 ]
コピペ君って馬鹿だな、まで読んだ。

346 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 18:24:00 ]
GetAsyncKeyStateを使うとボタンを瞬時に離さないとIf以下のコードが何回も繰り返し行われてしまいます。
途中にWaitなどを入れてみましたが、そうするとキーを押したときに反応しないときがあります。
解決方法を教えてください。

347 名前:デフォルトの名無しさん mailto:sage [2008/05/14(水) 22:46:12 ]
>>346
釣りに見えるのはなぜなになでしこ

簡単に解決させたいなら ElseIf と KeyUpイベントを覚えるといいと思うよ

348 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 00:04:46 ]
>>374
偉そうに舐めた口利いてる奴がそのレベルじゃアカンだろうw
コントロールのイベントはフォーカスがあるときしか拾えない。
こんなUIの基礎も理解してないの?

>>346
GetAsyncKeyStateのリファレンスにまんまの答えが書いてあるじゃん。
もちろん自前でステートマシン作って解決してもいいんだけど。
ステートマシンっていう考え方は小学生でも理解できるわりに応用が利く(たとえば
>>338のようなコードをわかりやすくするのにも使える)から覚えて損はないよ。

349 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 00:18:53 ]
>>347
ElseIfとKeyUpですか・・・ちょっと調べてきます

>>348
なるほど。もっと詳しく勉強する必要があるんですね。
ふたりとも回答ありがとうございます



350 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 08:21:35 ]
だから詳しく勉強する必要はないの。
そう言ってるでしょ?
MSDNライブラリのGetAsyncKeyStateの項にそのまんま答え書いてある

351 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 17:22:21 ]
>>348
FormにKeyUpイベントあんの知らんの?

352 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 17:36:32 ]
>>348
Labelのイベントだとは書かれていないのにも関わらず
Label_KeyUp()に書けと読み取ったお前もかなりやばいぞ。

キー操作でLabelに何かアクションする場合、
Form_KeyDown()やForm_KeyUp()に処理が書かれることが多い。
>>347はそれを言ってるんだと思うが?

353 名前:デフォルトの名無しさん [2008/05/15(木) 17:56:57 ]
VB6を使ってるんだがFlexgridでAccess2000に接続したものを表示したい。
ADOコントロールを使わずに接続することって可能?

354 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 18:01:23 ]
まず質問者と>>348>>338のバグを認識しないとな。

355 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 18:50:24 ]
>>353
DAOでやるってことかな

356 名前:デフォルトの名無しさん mailto:sage [2008/05/15(木) 19:40:08 ]
初歩的な質問で恐縮ですが、

vbでsendkeysを使って作成しておりました。
さまざまな問題が出たため、apiを使用しキーボードシュミレートを
行うため、下記のサイトを参考に組み込みました。
hanatyan.sakura.ne.jp/vbhlp/keybdeve.htm

こちらで送信はできたのですが、ポップアップするような
アプリケーションの場合そこで制御が停止してしまいます。

停止せずに送る方法がありましたらお教え下さい。


357 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 00:21:38 ]
>>351-352
あのなあw
それ以上馬鹿を晒さないうちに黙っていた方がいいと思うよ。

358 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 02:04:54 ]
>>352

359 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 02:56:11 ]
VB脳w



360 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 11:35:01 ]
VB6を使用しています。
ADO2.5のRecordsetオブジェクトを使用し
以下のようなDBを参照し

フィールド1 |
----------
A |
B |
C |

データを
Aを取得し変数にセット→MoveNext
Bを取得し変数にセット→MoveNext
Cを取得し変数にセット
という流れで取得しています。

MoveNextなどをせずに
一気にA B Cのデータを取得し変数にセットをしたいです。
もし可能であればご教授ねがえませんか?


361 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 11:49:27 ]
ご教授なんて呼ばれても そんな人いません

362 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 12:19:34 ]
恥ずかしい馬鹿だな。
「ご教授」でもいいんだよ。嘘だと思うなら辞書引いてみな。

DBはやったことないんで質問には答えられなくて申し訳ない。

363 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 12:28:39 ]
>>362
ご教授なんて日本語存在しませんがw
嘘だと思うなら「間違った日本語」とかでググってみな?w

あ、ゆとりさんに無理ですか そうですか
存在しないものを作りあげてしまうなんて
もうレベルが低すぎてこちらまで恥ずかしくなってきましたw

364 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 12:31:39 ]
辞書を見て自分の都合のいい解釈する人に何を言っても。

365 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 12:33:54 ]
それはいわゆる無知な「誤用厨」(まあ今俺が命名したんだけどw)が
勝手にそう言ってるだけ。

だから辞書引けって馬鹿。

ついでにその「誤用厨」が得意げに指摘する「確信犯という言葉の誤用」も
誤用じゃないんだよ本当は。

366 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 12:41:38 ]
間違ったものを強引に正しいものにしようと必死な人がいると聞いて
飛んできますた

>>365
間違いを指摘されてるんだから、そろそろ悪あがきは止めて あきらめようぜ?ww
お前が馬鹿なのは十分分かったから、これ以上 墓穴掘るなよ

ご教授はどう考えても 存在しない日本語
日本人なら正しい日本語使え、プログラミングとかやる奴ならなおさら

367 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 12:44:29 ]
あのなあ。
そもそも「教授」って言葉をポストに使う方が元々は派生的な用法だっての。
字面見ればわかるだろそんなの。

368 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 13:00:50 ]
プログラムは正しくない命令文ではエラーが出るが、
「ご教授ねがう」は「ご教示いただく」のことだろうなってわかるだろ。
教えてやればいいだけでしょ。

お前らそんな固い頭でプログラミングとか向いてないんじゃね。

>>360
文章から、変数は配列じゃないと想定してレスすると、一気に変数に入れるのは不可能。

数が少ないならフィールド横に配置して1レコードにするとか。
フィールド1 | フィールド2 | フィールド3 |
----------
A | B | C |

変数に配列使ってループさせれば解決すると思うけどネ。

369 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 13:08:43 ]
 Function Nihongo_OK(ByVal str As String) As Boolean

Select Case Instr(str,"ご教授")
 Case 0
  Return True
 Case Else
  Return False
End Select

End Function



370 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 13:25:32 ]
Debug.Print Nihongo_OK("あたご教授は素晴しい教授だ")
False

( ゚Д゚)

371 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 13:26:54 ]
誰?

372 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 16:08:10 ]
ご教授って存在しないの?
教授に対して
ご教授お願いしますってのもだめなの?

373 名前:デフォルトの名無しさん mailto:sage [2008/05/16(金) 18:47:18 ]

Private Sub CommandButton2_Click()

Dim mambo As Date
If Trim(mambo) = Null Then Exit Sub
mambo = UserForm1.ComboBox1.Value
Call search_light(mambo)

End Sub

上のプログラムで「mambo」という変数には時間が入る(or空白)のですが、
「mambo」が空白の時でも、プロシージャが終了してくれません。

「""」を使うとエラーになるし、エラートラップを使うしかないのでしょうか?

374 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 11:42:08 ]
>>360
Recordset.GetRowsメソッドじゃだめ?

375 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 11:48:17 ]
>>373
とりあえずDate型の初期値はNullじゃないよ

If mambo = #0:00:00# Then Exit Sub

376 名前:デフォルトの名無しさん mailto:sage [2008/05/17(土) 12:38:58 ]
ListViewのような行と列を持つコントロールに
テキストボックスやコンボボックスを表示されられるコントロール名ってなんでしょうか?

377 名前:373 mailto:sage [2008/05/19(月) 09:13:12 ]
>>375
遅くなってすみません。
ありがとうございます

378 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 10:13:48 ]
コンボボックスで起動直後に任意項目を選択済みにするには
ロードイベントにSelectedIndexで設定する以外に方法はありますか?

コンボボックスのプロパティには初期値を設定出来る項目はないようですし

379 名前:デフォルトの名無しさん mailto:sage [2008/05/21(水) 12:20:53 ]
初期値を設定すべき実行部分で初期値を設定する以外に方法はないと思う



380 名前:デフォルトの名無しさん mailto:sage [2008/05/22(木) 18:10:29 ]
msgboxで表示される文字のフォント指定はどうやるのでしょうか?

381 名前:デフォルトの名無しさん mailto:sage [2008/05/23(金) 03:09:51 ]
そりゃあコントロールパネルからだ

382 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 17:14:46 ]
ttp://jeanne.wankuma.com/library/inifile/source.html
↑のクラスライブラリをVBで使おうとしても
この引数を受け付ける New がないためオーバロードの解決に失敗しました というエラー出て
インスタンス化出来ないです、なぜですか?

参照設定でDLLを読み込んで
 Dim ini As New Jeanne.Ini.IniFile
のコードを書きました

383 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 17:51:30 ]
>>382
どうみてもC#だが誤爆か?
それともそれをDLL化したものが「VB6以前」で使えないといってるのか?
後者ならあたりまえなので、COMのラッパークラス書いてレジストリ登録しなさい。

384 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 19:10:45 ]
>>383
やっぱりVBで他言語のdllはコーディングし直さないと使えないのですか
VCで書いたライブラリをVBで利用するための詳しい解説付きサイトがあったので
C#のもいけるかなと思ったのですが

385 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 19:39:03 ]
つか、inifile読み書きクラスって、車輪の再発明もたいがいにしろって感じ

386 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 23:28:12 ]
>>384
「VC#で書いたライブラリをVBで利用するための詳しい解説付きサイト」を探して読め


387 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 10:49:51 ]
ファイルAとファイルBのCSVファイルの内容を比較するプログラムを作る時
みなさんならどうしますか?

自分はまだ知識が乏しいので
それぞれのファイルをSystem.IO.StreamReaderを使ってオープンして
一行読み込むたびに,区切りのデータをArray変数にsplitで代入して
GetUpperBound(0)で最大を把握しながらArrayの各値を比較しています

先に全部のデータを変数かデータベースに読み込んでから比較したら
比較速度はかなり増しますか?

388 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 11:01:04 ]
Dim tmp1(),tmp2() as string

Dim CSV1 As New System.IO.StreamReader(ファイル1, System.Text.Encoding.Default)

Do Until CSV1.Peek() = -1
tmp1 = Split(CSV1.ReadLine(), ",")

Dim CSV2 As New System.IO.StreamReader(ファイル2, System.Text.Encoding.Default)

Do Until CSV2.Peek() = -1
tmp2 = Split(CSV2.ReadLine(), ",")

''''ここに比較処理

Loop
CSV2.Close()

Loop
CSV1.Close()


>>387 実際のコードはこのような感じです
比較処理時間を短縮出来るもっと効率の良い方法があればご教示お願いします

389 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 11:22:21 ]
>>387
.NETの話題ならスレチだが。

VB6以前なら

Dim FSO As Scripting.FileSystemObject
Dim sFileA As String
Dim sFileB As String

  Set FSO = CreateObject("Scripting.FileSystemObject")

  sFileA = FSO.GetFile(FileAのパス).OpenAsTextStream(ForReading).ReadAll
  sFileB = FSO.GetFile(FileBのパス).OpenAsTextStream(ForReading).ReadAll

  Set FSO = Nothing

  If sFileA = sFileB Then
    MsgBox "同じ"
  Else
    MsgBox "違う"
  End If


ってやるとめっちゃ早いけど。
行単位比較だったら取得したファイル内容を、
SplitでvbNewLineを区切り文字にして配列ゲットしてループ&比較かなぁ?



それにしても携帯でコード書くと疲れるな。



390 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 11:42:36 ]
比較してどこが違うか具体的に示す必要があるなら、それでいいんじゃない
ただ異なっているかどうかだけでいいならバイナリで読み込んで比較するけど

391 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 11:49:22 ]
>>390
その手があったか>バイナリ

392 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 11:56:42 ]
>>389-390
ありがとうござます

>比較してどこが違うか具体的に示す必要があるなら
やろうとしてることがまさにそれなので>>387の方法で比較するしかなさそうですね

みなさん、とても助かりました

393 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 16:02:59 ]
まずはファイルのサイズを比較して異なっていたら別物、同じなら中身を調べる、って処理を入れるのもアリだ

394 名前:392 mailto:sage [2008/05/27(火) 19:38:04 ]
DoEventをやめて
BackgroundWorkerで完全なマルチスレッドにしたら
処理速度にかかる時間が以前の半分くらいと かなり早くなりました

マルチスレッド化はロジックが結構複雑で
今までやりたいなと思いながらも結局はDoEventで代用してましたが
やってみたら意外と簡単でいい勉強になりました

395 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 19:43:13 ]
ループにDoEvent入れてたってオチじゃないだろうな

396 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 20:27:52 ]
細かいようだが訂正

× DoEvent
○ DoEvents

397 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 20:51:27 ]
>>394
スレタイにいいかげん気づこうな

398 名前:デフォルトの名無しさん [2008/05/27(火) 22:30:43 ]
携帯プログラミング
テキストボックス1に文字が出る
ボタン12個
ボタン1(1)
ボタン2(2、A,B,C)
ボタン3(3、D,E,F)
・・・
ボタン9(9、W,X,Y,Z)
ボタン10(*)入力画面を初期化
ボタン11(0)
ボタン12(#)同じ文字・数字をつづけて入力できる

多いですがプログラミングコードを教えてください。
本当によろしくお願いします。

399 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 22:33:39 ]
>>398
ここは宿題スレではありません



400 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 00:20:58 ]
>>398
そんな簡単過ぎるコードも書けないのか今時の学生って
ホントに勉強してるの?

401 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 01:40:47 ]
グーグルツールバーみたいに入力候補がでるテキストボックス作りたいんだけどどうやるのがいいんだろう
検索対象の件数が増えると使い物にならないようなのしか作れん・・

402 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 01:44:56 ]
候補の用意ができたとして、
表示する部分は、シェルにIAutoCompleteなどというものがあるらしいが、
VBから使えるのかどうかわからない、すまん。



403 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 03:17:40 ]
>>401
ユーザーコントロールでコンボボックスとセットにして、
入力されたらリストだけドロップして見せればいいんじゃね

404 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 12:54:04 ]
環境はWindowsXP PRO SP3 WSH5.7です。
以下のコードを実行すると、"1 2 ... 19 20"という結果になります。

For i = 01 To 20
j = j & " " & i
Next
WScript.Echo j

実行結果が、"01 02 ... 19 20"となるようにするには、
どうすれば良いでしょうか?


405 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 13:54:53 ]
やらんとすることはゼロサプレス無しの2桁化でいいのか?
j=j+" "+format(i,"00")

ところでjの初期化は?


406 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 14:31:56 ]
For i = 101 To 120
j = j & " " & mid(i,2)
Next
WScript.Echo j


407 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 16:04:31 ]
>>405
レスどもです。VBSではformatが無いようで動きません。
FormatNumberとかはあるんですけど欲しい動作はなくて。

>>406
こういうトリッキーなやり方があるんですね。動きました。ありがとうございます。

408 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 20:13:51 ]
ゼロパディングって言え

409 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 21:52:39 ]
失礼な

tricky
───────────────
形 @ずるい,こうかつな
A手のこんだ,扱いにくい,巧妙な



410 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 22:58:24 ]
VBScriptはスレ違いのような

411 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 23:19:34 ]
>>410
くだらんレスをするな。モレモナー

412 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 08:27:54 ]
うんスレチガイだね

413 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 08:55:59 ]
パディングとサプレスの区別が付いていない奴の居るスレはここですか?

414 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 09:03:46 ]
VS2008のC++に移行しようと思って少しさわってみたけど
コマンドの候補を表示してくれるインテリセンス機能ってないのか・・
さらに敷居が高くなった

415 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 10:33:35 ]
>>410-412
>>1

416 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 13:40:32 ]
Right("0" & i, 2)とかやらない?

417 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 14:30:56 ]
Right(100+i, 2)

418 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 18:14:03 ]
>>417
ふいたwwwwwwww
どうしても数値でやりたいのかwwwwwwwwww

419 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 18:42:16 ]
>>417
それだと14桁で限界くるだろ



420 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 18:50:50 ]
でもありだな
>>416だろjkくらいしか思わなかった

421 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 20:35:30 ]
trickyだね






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<166KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef