トップページ⇒tech
1001コメント332KB

(*´д`*)アハァ… VB初心者質問スレ Part14

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさんNGNG
  Part 1 http://piza.2ch.net/tech/kako/968/968328471.html
  Part 2 http://piza.2ch.net/tech/kako/990/990793224.html
  Part 3 http://piza2.2ch.net/tech/kako/1000/10005/1000523122.html
  Part 4 http://pc.2ch.net/tech/kako/1006/10069/1006922992.html
  Part 5 http://pc.2ch.net/tech/kako/1010/10106/1010624646.html
  Part 6 http://pc.2ch.net/tech/kako/1013/10138/1013844542.html
  Part 7 http://pc.2ch.net/tech/kako/1015/10158/1015836357.html
  Part 8 http://pc.2ch.net/tech/kako/1018/10187/1018794901.html
  Part 9 http://pc.2ch.net/tech/kako/1020/10208/1020830472.html
  Part10 http://pc.2ch.net/tech/kako/1022/10221/1022127528.html
  Part11 http://pc.2ch.net/tech/kako/1024/10243/1024380249.html
  Part12 http://pc3.2ch.net/test/read.cgi/tech/1026642565/
  Part13 http://pc3.2ch.net/test/read.cgi/tech/1029241786/l50
Win32 API関連スレ
  Win32API 質問箱 Build4
  http://pc.2ch.net/test/read.cgi/tech/1023361418/
心得
壱.質問する前に過去ログにも目を通してみる。
弐.質問する前に MSDN などで調べてみる。
参.VBScript もこのスレでOK。
四.インストーラーなどの質問もOK。
0002961NGNG
今回はスレタイひねらなかったのね。
00031NGNG
気の抜けたタイトルが気に入ってたのさ。
0004デフォルトの名無しさんNGNG
乙カレー
0005前スレ961NGNG
前すれ998および、この>>2は私ではありません。
お気づきとは思いますが・・・
0006前スレ985NGNG
>>前スレ990
あ〜。昔VBでサービス作ったと思ったがなんか勘違いしていたかもしれん。
つーことで俺の発言は信用しないでくれ。
それはそれとしてTerminateイベントって本当に走るのか?
それとWinsockは参照設定することによりコントロールじゃない状態で使用できたはず。
それでうまくいかなかったらAPIだな。いやさっさとAPIにしてもいいが。
0007前スレ961NGNG
>>6
どのAPIを使えばいいのでしょうか?

APIビューアでWindowsockを探したのですが見つかりませんでした。
0008前スレ961NGNG
>>6
そのAPIを使ってみたいのですが、なんというAPIをどのように
使うのかがわかりません。初心者なもので・・・。
APIビューアでもそれらしきものが見当たりませんでした。
なにか少しでも簡単なヒントを頂けたら、お願いします。
0009前スレ961NGNG
>>7 も私じゃないのですが、質問がドンピシャなので良しとします(w
0010デフォルトの名無しさんNGNG
>>本当の前スレ961
MSDNライブラリでWinSockとかWindows socketsとかWSA〜で調べれ。
ドキュメントが英語であっても読め。
それでもわからなければGoogleでも使え。
0011デフォルトの名無しさんNGNG
VBでサービスを作るの?
やめといたほうがいいよ。CallBackが基本だから、デバッグしづらいし。
少なくとも初心者には無理。Cを覚えたほうが早い。
オートログオンにしてスタートアップにEXE入れとけ。
0012前スレ961NGNG
>>10
え、英語ですか・・・。
はい、やってみます。いろいろありがとうございました。
0013前スレ961NGNG
>>11
サービス化はツールを使っています。
他のアプリはそれで問題なく動いています。
たしかに良いとはいえない手法ですが・・・。
0014前スレ961NGNG
>>9
お前をDQNに見せようとしてああいう質問をしたんだが・・・。
ってことはお前は俺が想定するDQNと〃レベルと言うことか。ダメじゃん。
もっとがんばりな。
0015デフォルトの名無しさんNGNG
>>14
俺はお前が質問しなかったら9もあんな簡単な質問する気はなかったと思うがな。
結果的に961はDQNに見られることなく情報を手に入れることができてしまったわけだ。
オツカレ。
0016デフォルトの名無しさんNGNG
>>15
?
0017デフォルトの名無しさんNGNG
>>15
"DQNではあるが、情報を手に入れた"だろ。
0018デフォルトの名無しさんNGNG
>>17
検索下手、英語が読めない、結局理解できない(有力)、などの理由で帰ってくるに一票。
0019デフォルトの名無しさんNGNG
下の様に二重起動をチェックするように組んでみたのですが、

Private Sub Form_Load()
  '二重起動チェック
  If App.PrevInstance Then
    Call MsgBox("このシステムはすでに起動しています。", vbCritical, "エラー")
    Unload Me
  End If
  
  ・・・通常時処理・・・
End Sub

EXEを作って二重起動してみると、思惑通りエラーが出て、
勝手に閉じるまでは良いものの、フォームは見えないのにジョブは終了していなくて、
Ctrl+Alt+Delで終了させています。

通常なら「Unload Me」で閉じるのですが、何がダメなんでしょうか。
002015NGNG
>>17
そうだね。最初の段階では情報を手に入れられそうもなかったのに。
961を上回るDQNのせいで。
0021デフォルトの名無しさんNGNG
>>20
もしかして>>961さんですか?
002215=20NGNG
>>21
違います。
0023デフォルトの名無しさんNGNG
>>19
コントロールとか,クラスとかが残っているんじゃねーの
0024デフォルトの名無しさんNGNG
>>22
そのDQNとやらを目の敵にしてあなたにはメリットがあるの?
上司とか?
0025デフォルトの名無しさんNGNG
>>19
それ、Unload Meのあと通常時処理を行っちゃってるよ。
002623NGNG
追記。

Unload me はFunctionの終わりまで実行されるから。
関数終了後、Unload処理を行なう。
0027デフォルトの名無しさんNGNG
VBAはスレ違いですか?
002815=20=22NGNG
>>24
は? なに必死になってるの。あなたがDQNですか?
俺は961ともDQNとも関係ないよ。どうでもいいことじゃん。
0029デフォルトの名無しさんNGNG
>>28
>>961と関係は分からないが、DQNとの関係は微妙だな。
0030デフォルトの名無しさんNGNG
>>28
理由がなければそこまでムキになることも無いでしょうて。
関係なくてどうでもいいならなぜわざわざ961をかばいDQNを責めたのかがわからない。
純粋に理由が聞きたいだけですよ。
0031デフォルトの名無しさんNGNG
自分はあんまりパソコンを頻繁にはやらないんですが、
この前新しいCDゲームを買って、ゲームをパソコンにインストロールしました。
そうしたら、ディスクトップにショットカットが出来ていたのですが、
翌日そのショットカットをクリックしてもゲームがスタートアップしなくなりました。
インストロール直後にはスタートアップしたのに、WHO?(←英語でなぜって意味です)
003230NGNG
>>31
ワラタ。
0033デフォルトの名無しさんNGNG
>>31
どうせ「WHO?(←英語でなぜって意味です)」につっこんでほしいだけなんだろ?
神聖なVBスレにくだらねぇこと書くんじゃねぇよ。
003415=20=22=24NGNG
>>30
面白いやつだなぁ。どこがムキになってるんだ?
俺は一連の話の流とDQNの行動が面白かったからからかってるだけじゃん。
0035デフォルトの名無しさんNGNG
>>34
必死すぎ。ワラタよ。
0036デフォルトの名無しさんNGNG
      / 
                         /   _
         /◎)、_______∠l /   /○ヽ
          |  「....;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;| |,,.   ` -_´/
    .彡⌒ー/|  \___;;;;;;;;;;;;;;;;;;;;;;| |;;;;,   "    i ̄ ̄i
      /´⌒ヽ_____\ ̄ ̄ ̄ .|;;;;;;,      /    ゙、
    ,/´    ! ヲ=℃/ ̄      |;;;;;;;;,     /_,-..‐..-、_゙、
   /_レ‐ー――‐" ̄ ̄)         ヾ;;;;;;;;,,,..  /':::::::::::::::::::::`i
  /    __   r'~ ̄            ヾ;;;;;;;;;;;;,,,.トー――――-!
 /       _)               ヾ;;;;;;;;;;;;;;,,,,....
 |     、  ノ                 ヾ;;;;;;;;;;;;;;;;;;;;;;;;;,,,,....
 ゙、;;;,,..    ̄"                   );;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.......       
0037デフォルトの名無しさんNGNG
987 名前:デフォルトの名無しさん 投稿日:2002/09/02(月) 14:40
>>961 = >>177

が気に障った>>177だったりしてな。
0038デフォルトの名無しさんNGNG

>>31と>>33はグルーピング?(←英語で一緒って意味です)

インストロールしたゲームのピロッピーディスクが
デスしてたんだよきっと。YES!
003933NGNG
>>38
ちげーよ。ふざけんな。
0040デフォルトの名無しさんNGNG
>>35
気が済んだか。
0041デフォルトの名無しさんNGNG
なぜにいまさらVBなのですか?
あれほどユーザ環境への依存度の高いお遊び言語に
なぜにそこまで熱くなれるの???
神聖なVBスレだって(プッ
いくらVBの知識をひけらかしてふんぞりかえっても、
人間としてのレベルは高まりませんねぇ。
0042デフォルトの名無しさんNGNG
>>40
気が狂いました。
0043デフォルトの名無しさんNGNG
>>41 とりあえずこれは放置ですな。
0044デフォルトの名無しさんNGNG
>>41
2点。スレが詰まんなくなった。
0045デフォルトの名無しさんNGNG
>>41
VC++然りだな。

って言うかあんたの言う「ユーザ環境」って何を指すわけ?
0046デフォルトの名無しさんNGNG
>>41
しかも既に発売終了。
0047デフォルトの名無しさんNGNG
つうか放置放置
0048デフォルトの名無しさんNGNG
Win98se、VB5、アクセス97で開発しています。

この度WinXP、アクセス2002のマシンに作ったプログラムをインストールしました。
そして実行すると「MSJET35.DLLが見つかりません。」というエラーが出ました。
この場合単純に「MSJET35.DLL」をインストール対象のマシンにコピーするだけでいいものでしょうか?
同じような経験をした方などいらっしゃいませんか?
0049デフォルトの名無しさんNGNG
イマドキ・・・と思ったけど、ユニクロ買ったと思ってとやったらマジすごかった。
これはだましじゃないよ。

■参加方法(このゲームのしくみ紹介含む)■
1、まず、下記4人の口座に¥1000ずつお金を振り込んでください。(銀行の自動振込機で振り
込みます。4人の口座部分を印刷して行くと楽です。)
2、次に、このメールをそのまま使って(編集は自由ですが)リストにある4つの口
座の一番上を削除します。そして一番下にあなたの口座番号を書きます。
  あとは、番号を上から順に振りなおします。(こうして順番に上の人が抜けてい
くので違法性はない、という弁護士の方の説明がありました。
3、それを、できるだけたくさんインターネットの掲示板のアドレスに送って下さ
い。受け取った人がどんどん同じように振り込んでくれます。最初の1週間で
  10件以上振込みがない場合はもうヒトフンバリします。
4、後は、現金¥1,000円が振込まれるのを待つだけです。
--- --- --- --- --- --- --- --- --- --- --- --- ---
※一番上の口座を削除するから、法律に触れないで済むのです。それだけは絶対に
守ってください。
※お金を送らないでリストに自分の名前を載せると、上位の人の振込み確認で訴えら
れたりいろいろな攻撃を受けてしまいます。良心を持って参加することで
 みなさんが同条件で収益を期待できるのですから。参加して2週間を過ぎたころか
ら平均して増加してきます。毎日がとても楽しくなる4千円のゲームに
 だまされたと思って今すぐ参加してみてください。すごい額になって返ってきま
す。そしてお金が途切れてきたら上記の行動を繰り返せばいいのです。
-------------------------------------------------------------
 ■リスト■

(1)高崎信用金庫 飯塚支店 普通 2172959
(2)群馬銀行 高崎支店 普通 1018272
(3)三井住友銀行 天満橋 普通 488044
(4)UFJ銀行 浦安パークシティ出張所 5381782
0050デフォルトの名無しさんNGNG
VB6にて、「TIF」を画像表示させるプログラムを組みたいのですが、
ピクチャーボックスを試したら、エラーが出ました・・・。
ピクチャーボックスはTIF非対応なんでしょうか?
0051デフォルトの名無しさんNGNG
VBでトランプゲーム(ブラックジャック)を作ろうとしています。
トランプは全部で3セット分にしようと思っています。
山から引いたときに出てくるカードはランダムなのですが、
全く同じカードは3枚しか存在しないということになります。
(たとえばハートのAは3枚しか出てこない、といった感じです)
軽く、速く、を前提としたときに、どんなコーディングが最適でしょうか?
0052デフォルトの名無しさんNGNG
(*´д`*)アハァ…
0053デフォルトの名無しさんNGNG
>>50
MSDN読もうね

>>51
まずは自分で考えな
0054デフォルトの名無しさんNGNG
>>51
何を速くしたいのかさっぱりわからん。
005551NGNG
すんません。質問した自分がドキュソですた
005648NGNG
>>48もおながいします。。。。。
0057デフォルトの名無しさんNGNG
>>56
うるせーよ
0058デフォルトの名無しさんNGNG
今日は偽者ばっか。暇そうだな。
0059デフォルトの名無しさんNGNG
質問させてください。
環境 VB6.0SP5+Win2000

Oracle8iにADO(orDAO)+ODBCで接続し、ストアドプロシージャを叩きたいのですが、
どのようにしたらよいのでしょうか。
0060デフォルトの名無しさんNGNG
なんか馬鹿な質問している奴が同一人物に見えてくるなぁ。
006148NGNG
マジで困ってます。
アクセス2002には「MSJET35.DLL」は含まれていないのでしょうか?
0062デフォルトの名無しさんNGNG
ギコナビってVB? かちゅーしゃは?
0063デフォルトの名無しさんNGNG
>>61
Jet35はとっくにサポート外
006448NGNG
>>63
マジデスカ?(*_*)?
プログラムの作り直しと?
0065デフォルトの名無しさんNGNG
>>64
もしそれが仕事でサポート対象内なら地獄を見る気がする。
DAOからADOに変換。

つかまず、DLLをコピーしてみればいいだろよ。
0066デフォルトの名無しさんNGNG
サポート対象内とは、ソフトの方がね。
006748NGNG
仕事でサポート対象内かも?ん?微妙。
とりあえずDLLコピーしてみます。
0068デフォルトの名無しさんNGNG
MSJETって新しいバージョンがなかったっけ?
0069デフォルトの名無しさんNGNG
>>48
>>61
ADO + Jet OLE4.0なら、Jet3.5形式のMDBも処理できるはず。
コードの大幅な変更は避けられないが・・・。
それを避ける意向なら、開発環境をAccess 2000または2002に移行してみては?
(参照DLLをDAO3.6に変更すれば、コードの変更は不要)
0070デフォルトの名無しさんNGNG
DLLコピーしてレジストリ登録すれば済むんじゃないの?
0071デフォルトの名無しさんNGNG
>>70
ライセンスとかMSのサポートとか考えた上での発言?
007248NGNG
すんません。
お客さんの都合でDLLコピーは今日は止めてくれと。明日試す事になりました。
なんだか不安を持ち越す感じです。
0073デフォルトの名無しさんNGNG
>>71
コピーする方向で話が進んでるからそれを前提で書いただけ。
MSのサポート?何を言いたいのかよくわからん。もうちょっと具体的に
007419NGNG
>>23=>>25
ども。>>19です。
Unload Meの後にExit Subを入れたり、Unload MeをEndに変えたりしましたが、
どうも何か残っているようです…。うーん。
0075デフォルトの名無しさんNGNG
>>74
FormのInitializeやTerminateでメッセージでも表示して調べてみれ。
007619NGNG
>>75
ういっす、用事できまして、明日会社ででもやってみます。
センキュっす。
0077デフォルトの名無しさんNGNG
>>19
>>74
そもそも、Form_Loadイベントで自フォーム自身をUnloadするのが不自然であり、
無理があります。
スタートアップを標準モジュールとして、そこで、最初に二重起動確認処理を
記述すれば、終了処理はEndだけで済み、何の問題も生じないはず。
0078デフォルトの名無しさんNGNG
>>77
俺はForm_loadでUnload Meするのはそんなに不自然だとは思わんけどなぁ。
Mainを使ったほうがいいとは思うけど。
0079デフォルトの名無しさんNGNG
>>78
オブジェクトの自殺って怖すぎると思うが。
気がついたらそのオブジェクトが無効になってるわけで呼び出し元はたまったもんじゃないかと。
008077NGNG
>>77-79
意ずれにせよ、二重起動防止処理を一番最初に実行すれば、「その前に何をやっていたか」を
気にせずに済むのが、利点。
実際、77の方法で問題が生じたことは一度もない。
0081前スレ957NGNG
遅くなりましたが、
お答えくださった皆様、ありがとうございました(__)
0082デフォルトの名無しさんNGNG
>>79
別にUnloadしてもオブジェクトが無効になるんじゃなくてFormがUnloadされるだけ。
Form_Initialize内で実行時エラーを出したらオブジェクトは無効になるがそれは呼び出し元で検出できる。
Form_Load内のUnloadも呼び出し元で検出できる。(Form_Load内でUnloadしたという実行時エラーになる)
Form_Load以外でのUnloadも参照を保持しておけば呼び出し元で監視することができる。
問題ないと思うが。
0083デフォルトの名無しさんNGNG
激しくガイシュツ気味だと思いますが、
VBAでLINE INPUTを試みた所、テキスト全体を読み取ってしまいます・・・。

もしかしてTXT側の改行時に「\n」等を入れないと行けないのでしょうか・・・。
0084デフォルトの名無しさんNGNG
googleは便利だよな。
あとHelpも便利だなぁ。

(*´д`*)アハァ…
0085デフォルトの名無しさんNGNG
>>83
Line Input の "Line" ってどういう意味なんだろうね♥
0086デフォルトの名無しさんNGNG
MMControlを使用して2つのexeでほぼ同時に再生命令した場合、
片方で再生が終わった後にもう片方で再生し始める、というように
Wavファイルを再生したいのですが
下記のような命令だと2つ目のexeの音声が流れません。
どのようにすればいいでしょうか?

<再生命令>
With MMControl1
.DeviceType = "WaveAudio"
.FileName = "C:\1.wav"
.Command = "Open"
.Command = "Sound"
.Command = "Close"
End With
0087デフォルトの名無しさんNGNG
>>85
線ですよね!
0088デフォルトの名無しさんNGNG
>>86
つぅかメッセージを送るとかもうちょっとまともな通信手段を考えろよ。
008983NGNG
キャリッジリターンに当たる"\r"を行全部に入れてみました!!

・・・全行の最後に「"\r」の入ったテキストファイルが読み込まれますた!!

500個位生成してるのでダイアログボックスが鬱・・・。
(*´д`*)アハァ…
0090デフォルトの名無しさんNGNG
・・・。

アフォでつか?
0091デフォルトの名無しさんNGNG
>>89
ラインフィードって知ってるか?
009283NGNG
ホンマにアフォに思えてきます。
もちっとヘルプORぐぐるで頑張ります・・・。

ファイルの読込形式が悪いのかと疑った時期も3分前にありました。
あまり迷走しないように頑張りたいです。
0093デフォルトの名無しさんNGNG
つぅかマジで吹いた(w
0094デフォルトの名無しさんNGNG
>>92
思う存分迷走しな。そうして得た知識が初めて身になる。
009583NGNG
今日はそろそろ落ちますです。
>>84>>85>>87>>90>>91>>93>>94さん
付きあって頂いてありがとうございます。
ちょっと邪道かも知れませんが、明日、本もみてみます。
ラインフィードとキャリッジリターンについて、もちっと明日も
調べますです。

最後に>>94さんの言葉通り、迷走続けながらでも突破したいと思います。

それでは、スレ汚しすみませぬ。
0096デフォルトの名無しさんNGNG
青春だな(ぷ
0097デフォルトの名無しさんNGNG
>邪道かも知れませんが、明日、本もみてみます
なんで邪道なんだ?むしろ聞く前に読めって感じ
0098デフォルトの名無しさんNGNG
0099 NGNG
>>87
プログラミングだけじゃなく、英語のセンスもゼロだな(プ
0100デフォルトの名無しさんNGNG
>>99
プ
0101デフォルトの名無しさんNGNG
なんか路線が外れるのですが・・・
VBを起動させると、「MX見張り番」のインストールがどうのこうのと
毎回メッセージが出てVBの起動の妨げになっています・・・。
どなたか解決方法わかりませんか?
0102デフォルトの名無しさんNGNG
>>101
ハードディスクをすべてフォーマットした上で、OSから再インストールすれば
すべては解決する(w
0103デフォルトの名無しさんNGNG
>>101 そのソフトのアンインストール・再インストールしてみ
0104デフォルトの名無しさんNGNG
すいまそん、ActiveXコントロールを自作したのですが、コンパイルすると
ツールヒントが出ません。
デバッグで実行させると、マウスポインタを置けばツールヒントが出てくる
のに(普通ならそうですが。)、コンパイルしてEXEで実行させると出ないの
です。ActiveXの設計自体にミスがあるのでしょうか。
0105デフォルトの名無しさんNGNG
スクリプティングとプログラミングとオーサリングの開発手法の異同って何ですか
010648NGNG
いちおう報告しておきます。

WinXPマシンのSYSTEM32フォルダにMSJET35.DLLをコピーしたらあっさり動きました。

とりあえず対処は完了という事になり、ほっとしました。
助言してくれた方ありがとう。
0107デフォルトの名無しさんNGNG
>106
Office製品を使った開発はこの辺りがやっかいだね。納品した瞬間から
ものすごい勢いで陳腐化が始まる。まあ、裏を返すとMSのバージョンアップ
がものすごい勢いだってことになるけどね。
0108デフォルトの名無しさんNGNG
異同? 宿題?
0109105NGNG
>>108
正解!!
0110デフォルトの名無しさんNGNG
>>109
そんなのはメーカーが
これはスクリプティングツールだと言って売ればスクリプティングだし、
プログラミングツールだと言って売ればプログラミング。

そんなことより配列とポインタの違いを勉強してくれ。
0111デフォルトの名無しさんNGNG
>>110
ポインタ? ここはVBスレなので参照と読み替えていいか?
0112デフォルトの名無しさんNGNG
お前らオーサリングとはなんですか?
0113デフォルトの名無しさんNGNG
>>104
0114デフォルトの名無しさんNGNG
>>112
伝説の魔獣、オーサの角から作ったとされる指輪。

DF+1200 使用:敵一体にオーティムア 装備:味方に薄いバリアを張る。
0115110NGNG
じゃあ、Variantの配列とVariant配列の違いという事で。
いや簡単すぎるか。
0116デフォルトの名無しさんNGNG
>>115
>Variant配列
いいたいことはわかるが、それはきみのオリジナル用語。
0117仮 ◆ZKkSDatc NGNG
VB6で、ペケピーProな環境です。
最近は外部アプリケーションの遠隔操作とか好んで学んでるんですが
Windowハンドルの取得の部分でいまいちやりかたのわからない部分があるのです。

やりたいことというのは、
とある親Windowの子Windowを列挙して、その中からひとつのテキストボックスのハンドルを調べたいのです。
問題点1 列挙する際に、GW_CHILDでひとつめの子を取ってから、GW_HWNDNEXTで回しているのに
      全ての子Windowが列挙されない。
問題点2 特定のテキストボックスのハンドルを調べたいのだが、テキストボックスは同じクラスネームのものがいくつもあって
      どれが調べたいテキストボックスなのかさっぱりわからない。

解決方法とかあったらよろしくお願いします・・・
0118デフォルトの名無しさんNGNG
>>117
外部アプリケーションっててっきり分散処理とかやってると思ってどきどきしたよ。
0119デフォルトの名無しさんNGNG
英語の得意なプログラマはVBを選択する
0120デフォルトの名無しさんNGNG
>>119
>プログラマは
ここに語弊
0121デフォルトの名無しさんNGNG
VBプログラマはVBが高級言語だと言われてうれしい気分になれる
0122デフォルトの名無しさんNGNG
しかしそういう香具師は高級言語の意味を知らない
0123デフォルトの名無しさんNGNG
こんにちはです。

VBで、Word等のアプリケーションを開いて、
Word等を閉じずに、実行した場合エラーになります。
同一ファイル名なので、エラーになると思うのですが、
そのアプリケーションファイルが開いているかどうかの
判定方法ってどうすればよいのでしょうか。

よろしくお願いします。
0124デフォルトの名無しさんNGNG
On Error GoTo
0125デフォルトの名無しさんNGNG
VBから帳票を出すのにExcelでやってみようと思うのですが、
参照設定に「Microsoft Excel 8.0 Object Library」を入れて、
下のようにやったのですが、

  Dim ExcelPath As String
  ExcelPath = "C:\Program Files\Microsoft Office\Office\excel.exe"
  Call Shell(ExcelPath, vbNormalFocus)

このExcelを特定して操作することができません。
Shellで開くのが駄目な気もするのですが、上手い方法が浮かびません。
どうかひとつ知恵を。
0126デフォルトの名無しさんNGNG
>>125
やりたい事がイマイチ良く分からんが、CreateObjectとかEXCELをキーワードに
googleあたりで調べてみそ。
0127デフォルトの名無しさんNGNG
Dim oExcelApp As Excel.Application
Dim oExcelWorkBook As Excel.Workbook
Dim oExcelWorkSheet As Excel.Worksheet
Dim oExcelRange As Excel.Range

Set oExcelApp = New Excel.Application
Set oExcelWorkBook = oExcelApp.Workbooks.Open("C:\テスト.xls", False, True)
Set oExcelWorkSheet = oExcelWorkBook.Worksheets("Sheet1")
Set oExcelRange = oExcelWorkSheet.UsedRange
Debug.Print oExcelRage.Item(1,1).Value
0128デフォルトの名無しさんNGNG
ねえねえ、メールのURLクリックしたときに立ち上がるメーラーを
リストボックスで選択するソフトってVBでつくれるの?
Outlookならできるんだけど、
他のメーラーも選択したくて。。。
0129デフォルトの名無しさんNGNG
VBからOracle使いたいんだけど。
やり方おしえれ
0130 NGNG
オラクルの検索時間を はかろうとタイマー割り込みを使ってみたんですが、
割り込みが 一度ぐらいしか 発生しません。
インターバルを 1とか 10とか 100とか 変えても変わりません。

いい方法ないでしょうか?
0131デフォルトの名無しさんNGNG
時間を計測するために、Timerイベントの発生した数を数えちゃダメ。
忙しい時は、イベントがくっついちゃうぞ。

検索前に現在時刻(Now())を変数に保存しておいて、
検索後の時間とDateDiffすれば時間が測れる。
ミリ秒以下を知りたい時は工夫しれ。
0132デフォルトの名無しさんNGNG
>>128
まじめにWindowsUpdateすると、OSにその機能が付くよ。
0133 NGNG
>>131

そのミリ秒以下ってのが 知りたいんですが・・・。
どのように工夫したらいいんでしょうか?
0134!=131NGNG
>>133
マルチメディアタイマーをぐぐれ。
0135デフォルトの名無しさんNGNG
Public Declare Function timeGetTime Lib "winmm.dll" () As Long
0136デフォルトの名無しさんNGNG
こんにちは。
VB6.0使ってるんですが
どなたか「へこんだ線」のデザインの仕方をアホな私に教えてください
メニューの区切り線のようなな3Dにへこんだ線をフォーム上に書きたいのです
いくらいじってもわからないよう
やることは他に山ほどあるのにー!
こんなことにこだわってる私ってー!ウワァァァン!! ヽ(`Д´)ノ
0137デフォルトの名無しさんNGNG
>>136
見た目にこだわるのは良いことだよ。

ラベルを貼り付けて、プロパティのBorderStyleを1:実線にしてあとで、幅を
調整するとそれらしく見えるよ。Captionは前もって消しとくように。
0138デフォルトの名無しさんNGNG
>>137
LINEって言うコンポーネントにした理由がさっぱりわからん線二本重ねるのはどうだろう?
0139デフォルトの名無しさんNGNG
>>138
??
137にはLineじゃなくてLabelってあるよ。

俺はまったく関係ないけど、気になったので実験してみたら>>137の方法で
へこんでいる線に見えたよ。

おもろい方法だ。
0140デフォルトの名無しさんNGNG
MMControlを使用して2つのexeでほぼ同時に再生命令した場合、
片方で再生が終わった後にもう片方で再生し始める、というように
Wavファイルを再生したいのですが
下記のような命令だと2つ目のexeの音声が流れません。
どのようにすればいいでしょうか?

<再生命令>
With MMControl1
.DeviceType = "WaveAudio"
.FileName = "C:\1.wav"
.Command = "Open"
.Command = "Sound"
.Command = "Close"
End With
0141デフォルトの名無しさんNGNG
open で開いたテキストファイル #1 の
任意の位置から任意の文字数だけ取得することはできますか?
0142136NGNG
>>137さん
ありがとうございますぅぅゥ!
やってみたら大変良い感じでした
けど、Hightは38が限界みたいでチョッとおデブな線にみえてしまいます..
これは、私のマシン環境なのでしょうか

>>138さんの方法も良い感じになりそうだったんですが、
線同士が重なりすぎてしまって無理でした。。。(´Д`)
グリッドの感覚を調整しないとダメなような気がします。

どうも、有難うございました
これで残業に気合が入ります。あはは〜 ヽ(´▽`)ノ
0143デフォルトの名無しさんNGNG
can
0144デフォルトの名無しさんNGNG
>>136
拡大してみてみれば分かるが、へこんだ感じは、
ちょっと暗い線と、明るい線が引いてあるだけ。Topプロパティをいじれ。

>>141
BinaryモードでOpenし、Getで任意のバイト数を読み飛ばせ。
次にお前は、任意の行から読みたいという!!
0145デフォルトの名無しさんNGNG
>>137
う〜ん、確かに見えるけどちょっと太くない?
>>136
Lineを2本、15ポイントずらして配置。上(左)の線の色をvbButtonShadow、下(右)をvbWindowBackgroundにするといいよ。
面倒ならFrameのCaptionを消してHeightまたはWidthを30ポイントにすればOK
0146デフォルトの名無しさんNGNG
俺はLine使ってるけどLabel1個とLine2本って違い出るかね?
0147136NGNG
>>145さま
ビンゴでした!!
まさにイメージ通りな出来に心も晴れ晴れでつ
皆さまありがとうございました!!

なんていい人たちなんだ ウワァァァン!! ヽ(`Д´)ノ
0148デフォルトの名無しさんNGNG
TabStripコントロールのStyleプロパティをtabFlatButtonsにすると、
なぜかBeforeClickイベントが発生しません。
(普通のタブ表示なら発生します)
これはそういう物なんですか?
それとも対処方法があるんでしょうか。
0149デフォルトの名無しさんNGNG
>>144
Seekって知ってる?
0150仮 ◆XnRNuqZ2 NGNG
悪 質 問 で し た か ?
おながいします・・・Nuke++とかのツールで見ると
ちゃんと親の下に子が全部表示されてますし、あれVB製だったはずですし
なんかやり方あるというのは分かっているのです。
私の現在使っているTips本とかにも載って無くって困って困って。
と、とりあえずもう一度ぐぐって来ます・・・
0151デフォルトの名無しさんNGNG
>>150
getchilewindow
0152デフォルトの名無しさんNGNG
>>150
なんのAPIでハンドル取得してるの?
0153仮 ◆XnRNuqZ2 NGNG
>>151
?? APIでつか?

>>152
GetWindowっす・・・GW_CHILDつけて。
他に同じようなAPIがあるのですか。そっちも調べてみます。
0154デフォルトの名無しさんNGNG
Windows2000なのですが、OpenPrinterでのネットワークプリンタのハンドルが取得できません。
同じソースで、他のマシン(WindowsXP、Windows98)では取得できるし、
ローカルプリンタでは成功するので、プリンタの設定なのかもしれないのですが・・・
権限の設定も問題無いし、どこに気をつけるべきなんでしょうか?教えてください。

ちなみに、プリンタは正常に印刷できます。
0155デフォルトの名無しさんNGNG
>>153
GetWindowとGW_CHILD/GW_HWNDNEXTで回す方法は間違ってないと思う。
hWnd=GetWindow(hWnd親,GW_CHILD)
Do While hWnd <> 0
  'ここで何か処理
  hWnd=GetWindow(hWnd,GW_HWNDNEXT)
Loop
これで同じ階層のWindowは列挙できるはずだ。

問題あるとしたら、Windowの親子関係の理解かも。
ちゃんと再帰検索しないと全部出てこないよ。
Windowの階層構造は、
 DesktopWindow/Form/Frameなどのコンテナ/各種コントロール/その上の部品
ってな感じになってるから、各階層で列挙したらその下も検索しないと。

クラス名だけじゃ判別できない、ってのも、Windowの階層構造から比較すれば
絞り込めるはず。そのうえで、Textの中身で判別するなどの方法をつかえば
何とかなるんじゃないか?

#次はGetWindowTextでテキストが取れないとゴネるに1票。
#SendMessageとWM_GETTEXT使ってね。
0156デフォルトの名無しさんNGNG
テキストボックスやラベルに表示する文字を
右詰やセンタリングではなく 均 等 にすることはできますか?
0157デフォルトの名無しさんNGNG
できない
0158デフォルトの名無しさんNGNG
VB6.0SP5、Win2000、DBはAccess2000で
下のプログラムを動かしたところ
Delete部分で
実行時エラー'3251';オブジェクトまたはプロバイダは
要求された操作を実行できません
というエラーが出てしまいました。
DeleteはAccess2000では使えないのでしょうか?

Dim cnn_Test As ADODB.Connection
Dim rs_Sample As ADODB.Recordset
Dim str_SQL As String

Set cnn_Test = New ADODB.Connection
With cnn_Test
.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=C:\Test\Test.mdb;"
End With

Set rs_Sample = New ADODB.Recordset
str_SQL = "select * from Sample"
rs_Sample.Open str_SQL, cnn_Test, adOpenStatic,adLockPessimistic

Do Until rs_Sample.EOF
rs_Sample.Delete
rs_Sample.MoveNext
Loop
0159デフォルトの名無しさんNGNG
>>158
Set rs_Sample = New ADODB.Recordset
str_SQL = "select * from Sample"
rs_Sample.Open str_SQL, cnn_Test, adOpenStatic,adLockPessimistic

Do Until rs_Sample.EOF
rs_Sample.Delete
rs_Sample.MoveNext
Loop
↓
cnn_Test.Execute "DELETE FROM Sample"
0160159NGNG
こっちの方が速いか
cnn_Test.Execute "TRUNCATE TABLE Sample"

試したこと無いけど
0161158NGNG
>>159-160
ありがとうございます。
やっぱりExecuteするしかないんでしょうか?
recordsetのDeleteはなんで使えないんだろう?
0162159NGNG
>>161
Deleteは使えるぞ。単にコードが悪いだけ。
rs_Sample.MoveNext
↓
rs_Sample.MoveFirst
0163219.96.219.219NGNG
            ./'"" : .:.. .::: . :. .::"=,
           /:. :..:..:::::::::::::::;;;:::;;;:::;:..:.:!,
           i:.:::::;;;;;:::::-,:-'"    ;:::::::i,
           ノ:::"   ヽ,..     ;:::::::i,
           ,i::::. ,....,,,_   ,;;;;;;::::,,,,,.;:::;i..,
           ヽ;::,;:- ;:;;::,ー:;"/ /  i"`:;":l,
           ;"!,:!, "''''"ノ: .ヽ---'" :l,,,/
            !, ;!,"""~::.,....::,:    .:l'          人生ってせつねーな
             'l;  ,//l,l,l,l,ll::  .;l 
              ヽ, "~---'"  ,;/!ヽ, 
               ヽ,,    /;;;" ヽ,,,,,,,
       ,,,,,,::---''''''''''''"!,i,"''''''''''"/   /::" "'--::;;,
     /";,    :::ヽ,   l,!,/=l;"~,/   /:   :;--''"'ヽ,
     (;;;;,,ヾ,   ;::: .   l/,,,.l,/  ,/;' ' :',,..:'      :ヽ
     ,ノ ::;;,,,::i,   :, ::,   i,./   /  .: ,:''   _,,.,-'l;:..   ,i
     ,):::::.... "";,  :,,:;   /   ,/.;;;;;, _,,;:-''''".,,;,:-"::...  l
0164158NGNG
>>162
できました!ありがとうございます
0165TTT ◆aXGRPkmk NGNG
vb6でUDPでデータを送ったり受信したりするプログラム書いてます。
むちゃくちゃ単純なやつです。
remoteport設定して
bindして
remotehostに送るだけ。
受信はイベントまちしてるだけ。
作ったときはうまくいったんですが
ディストリビューションウィザードで
他のPCにインストールして送信しようとすると
実行時エラー126がでてきます。
なぜでしょう。
0166デフォルトの名無しさんNGNG
Oracleのレコード件数を取得したいのですがうまくいきません。
過去ログを読むとSQL文でCOUNTをした方が良いと書いてあったので
次のようにしたのですが、肝心の結果が取得できません。
どこが悪いのでしょうか。助けてください。。。

Dim objtest As ADODB.Recordset
Dim strtest As String
Dim strSQL As String

Set objtest = New ADODB.Recordset
strSQL = "select COUNT(*) from spos.tst_meisai"

objtest.Open strSQL, cnn, adOpenKeyset, adLockOptimistic

strtest = objtest(0).Value
0167デフォルトの名無しさんNGNG
普通のVBとwordとかで付いてるVBの違いを教えて頂けないでしょうか?
0168ntkngw020205.isdn.ppp.infoweb.ne.jpNGNG
>>167
WordのはVBA
0169デフォルトの名無しさんNGNG
VBAでソフトとかゲームって開発できるんですかね?
0170デフォルトの名無しさんNGNG
>>169
出来ますよ。
エクセルで作ったテトリスを見たことあります。
0171デフォルトの名無しさんNGNG
できる
0172デフォルトの名無しさんNGNG
"制御文字入れたい\"\n\rとか"
VBではどうやって記述したらいい?
0173デフォルトの名無しさんNGNG
>>172
VBならとかって気取ってかいてんじゃねーYO。
他の言語使えないくせに。
0174デフォルトの名無しさんNGNG
>>172
chr$とか
0175デフォルトの名無しさんNGNG
>>172
こんな感じ?
"ABC"+Chr(13)+Chr(10)
Chr(13) = キャリッジリターン
Chr(10) = ラインフィード
0176デフォルトの名無しさんNGNG
リストヴュー内に値を表示することはできるのですが
逆にリストビュー内の文字列を取得する方法を教えてください。

インターネットで探してもヘルプ見ても書店に行ってもやり方が
書いてないんです・・・。単純に表示されている文字列を取得したい
だけなのですが。

私の探し方がいけないのでしょうか?
0177172NGNG
>>174
>>175
レスども、参考になりますた。
Chr(22) & "こんな感じになりますた" & Chr(22)
0178デフォルトの名無しさんNGNG
>>177
22ってなんだろう?

・キャリッジ リターンとライン フィードの組み合わせ。
vbCrLf = Chr(13) & Chr(10)

vbには定数が定義されているよ。
0179デフォルトの名無しさんNGNG
>>176
lvw.ListItems(index).Text
lvw.ListItems(index).ListSubItems(index).Text
0180デフォルトの名無しさんNGNG
はじめまして。
VBからエクセルをShell関数にて起動しているのですが、
起動するまでの約1〜2秒間の間、
普通にエクセルを起動(エクセルアイコンダブルクリック、スタートメニューから起動等)
できないようにしたいのですが、可能でしょうか?
というのは、Shellから起動する前後にエクセルのレジストリを触っているからです。

どなたかご教授願います。
よろしくお願いします。
0181デフォルトの名無しさんNGNG


                 ̄ ̄ ̄ ̄-----________ \ | / __-- ̄
      ---------------------------------  。>>173 ------------
       _______----------------- ̄ ̄ ̄ ̄ ̄     ̄ ̄----_______
                     ∧ ∧    / / | \ \
                    (   )  /  /  |  \  \
                 _ /    )/  /   |   \    \
                 ぅ/ /   //    /   |    \    
                ノ  ,/   /'    /    |     \
 _____      ,./ //    |     /    |      \
(_____二二二二)  ノ ( (.  |    /     |
              ^^^'  ヽ, |  |   /     |
                    |  |         |
                   ,,/  ,ノ  ∧、∧、∧、∧、∧、∧、∧、∧、∧
                  /  /| <
                  /  / | < 宇宙のかなたまでとんでけや
                 ,/  / | <、
                 \__つ )  ∨^∨^∨^∨^∨^∨^∨^∨^∨^∨
0182デフォルトの名無しさんNGNG
はじめまして。
VBからノーマル表示されているDOS窓を最小化したいのですが、どのようにしたらいいのか分かりません。
どなたか教えていただけませんか??よろしくお願い致します。
0183デフォルトの名無しさんNGNG
>VBからノーマル表示されているDOS窓
というのが意味不明なんですが

shellでbatファイル動かしてるという意味ならshellの第二引数でウィンドウの大きさ指定してくれ
違ったらスマソ
0184デフォルトの名無しさんNGNG
>>183
VBから、ノーマル表示されているDOS窓
であろう
0185仮 ◆ZKkSDatc NGNG
>>155
うぅ、どうもです。
>問題あるとしたら、Windowの親子関係の理解かも
これが大的中でございますです。
ComboBoxの内側のTextがComboBoxの子Windowになるとは知りませんでした。
なんとなく全部同じ階層なのかと勘違いしてたわけです。
お陰でComboBoxハッケソ→その子を検索→目的のTextBoxハッケソ
と、トントン拍子です。

ありがとうございました。(実は「テキストが取れない」ってのも調べようとしてましたw)
0186デフォルトの名無しさんNGNG
>>182 DeclareがめんどくさいのでCですまん。
int main(int argc, char* argv[])
{
  HWND hwnd;
  WINDOWPLACEMENT windowplacement;
  BOOL b;

  hwnd = FindWindow(NULL, "c:\\winnt\\system32\\cmd.exe");
  //hwnd = FindWindow("ConsoleWindowClass", NULL);
  printf("hwnd=%d\n", hwnd);
  GetWindowPlacement(hwnd, &windowplacement);
  windowplacement.showCmd = SW_MINIMIZE;
  b = SetWindowPlacement(hwnd, &windowplacement);
  return 0;
}
0187デフォルトの名無しさんNGNG
>>166
SQL2000だけど、そのコードで動いたよ。
数値で帰ってくるのに、文字列に入れているからかな。
でもちゃんと自動的に変換されたよ。

あとはcount(*) as cntとか名前を付けて、
Debug.Print objtest("cnt").Value してみるとか。
0188仮 ◆ZKkSDatc NGNG
こんどはSetWindowTextがComboBoxに対して上手く動かないや。
他のツールではちゃんと変更できるんだけどなぁ。
もういいやヽ(`Д´)ノネル!!
0189デフォルトの名無しさんNGNG
>>188
だからWM_SETTEXT使えってば(w
0190仮 ◆ZKkSDatc NGNG
ぁ
0191仮 ◆ZKkSDatc NGNG
デキタ
モレガヴァカデシタ
イッテキマ
0192初心質問NGNG
VB6.0&Access97でデータベースのトランザクション処理の質問です。
モジュール初期起動時に、PublicのDAO3.5_ObjectでCreateworkspace,OpenDataBaseを作成して
プログラム内でRecordsetを作成して参照・更新・追加などをしています。
複数のテーブルにレコード追加するときに、 Begintrans〜commitTransを使おうとしたら
追加時、Recordset.addnewのときにオブジェクトが無効とエラーになってしまいます。
直前のset Recordset = DataBase.OpenRecordset("select * from tbl where id=id ",dbsopendynaset)
は実行できます。
なぜなんでしょうか?
ちなみにBegintrans実行直前にCreateworkspace,OpenDataBaseを再作成(set〜)を行うとエラーになりません。
またBegintrans〜commitTransを使用しなければ、エラーは起きません。
誰か助けていただきたく。


0193デフォルトの名無しさんNGNG
まだクールバーにメニューを載せようとあがいている馬鹿ですが、
ツールバーのボタンにTBSTYLE_AUTOSIZEをセットしようとしてるんですけど、
全然上手く行きません。いい方法ありませんかね?ハァ・・・
そもそもツールバーコントロールのボタンのIDは101から始まってんだろーか。

Private Const WM_USER As Long = &H400
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Const TBSTYLE_BUTTON = &H0
Private Const TB_GETBUTTONINFOA As Long = (WM_USER + 65)
Private Const TB_SETBUTTONINFOA As Long = (WM_USER + 66)
Private Const TB_GETBUTTONINFO As Long = TB_GETBUTTONINFOA
Private Const TB_SETBUTTONINFO As Long = TB_SETBUTTONINFOA
Private Type TBBUTTONINFO
cbSize As Long : dwMask As Long : idCommand As Long : iImage As Long
fsState As Byte : fsStyle As Byte : cx As Long : lParam As Long : pszText As String : cchText As Integer
End Type
Private Const TBSTYLE_AUTOSIZE As Long = &H10
Private Const TBIF_STYLE As Long = &H8
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Sub Form_Load()
Dim tbInfo As TBBUTTONINFO
Dim lnghWnd As Long,lngRet As Long
lnghWnd = FindWindowEx(Toolbar1.hwnd, 0&, "ToolbarWindow32", vbNullString)
tbInfo.cbSize = Len(tbInfo) : tbInfo.dwMask = TBIF_STYLE
lngRet = SendMessage(lnghWnd, TB_GETBUTTONINFO, 101&, tbInfo)
tbInfo.fsStyle = TBSTYLE_BUTTON Or TBSTYLE_AUTOSIZE
lngRet = SendMessage(lnghWnd, TB_SETBUTTONINFO, 101&, tbInfo)
Toolbar1.Refresh
End Sub
0194デフォルトの名無しさんNGNG
>>192
エラーが出るプロシージャのコード出してみ
0195デフォルトの名無しさんNGNG
>>187
動きましたか。。。
教えていただいた方法を試してみます。
0196デフォルトの名無しさんNGNG
>>195

Dim oraDynaset As Object
Dim strSQL As String
Dim oraCnt As Long

Const ORADYN_READONLY = &H4&

strSQL = "SELECT * FROM TABLE"

Set oraDynaset = gOraDataBase.CreateDynaset(strSQL, ORADYN_READONLY)
oraCnt = oraDynaset.RecordCount

※gOraDataBaseは、オープンしたDBね
0197デフォルトの名無しさんNGNG
タブ区切りの文字列を分割したいんですが、良い関数はありますか?
Cで言うところのstrstrみたいな。
0198デフォルトの名無しさんNGNG
>>197
まずはstrstrがどういう関数か調べてこい。
0199197NGNG
あ、了解す。
strstrは全然違う関数すね。
0200197NGNG
splitですね?
やってみます
0201?NGNG
>>195
Oracleの場合はFieldsコレクションを使わないとだめだよ。
objtest.Fields(0).Value でうまくいくと思う。
>>196
ADOとOO4Oの区別をつけましょう。
それと行数取得のために全表問い合わせなんて事はやめましょう。
0202197NGNG
タブ区切りのテキストを↓で分割しようとしたんですが駄目でした。
タブ記号を"'"なりに変換するほうがいいですかね?


Dim strValue() As String

Dim aaa As String

aaa = "aa bbb cc"

strValue = Split(aaa, Chr$(9))
0203196NGNG
>>
>それと行数取得のために全表問い合わせなんて事はやめましょう。

ここにSQLを代入するという、例のつもりだったんだけどね。
0204196NGNG
>>203は>>201に対してです
0205? NGNG
>>203
クク・・詭弁はよせヨ
0206?NGNG
>>202
それはテキストがタブ区切りになっていないから。
aaa = "aa" & vbTab & "bbb" & vbTab & "cc" でやってみ。
0207197 NGNG
>>206
素晴らしい!
ありがとうございます
0208?NGNG
>>203
そこにカウントをとるSQLを入れるとレコード行数は1になるよ。
会社の先輩に教わってるんだろうけど、ちゃんと自分で勉強したほうがいいよ。
>>205
クク・・騙りはよせヨ
0209203NGNG
>>208
俺は会社の先輩なんかに教わってねえよ!!!
0210デフォルトの名無しさんNGNG
すみません。今VBからACCESSにデータを書き込むというプログラムを
作成していたんですが、実行すると「1つ以上の必要なパラメータの
値が設定されていません」と表示されます。
デバックをクリックすると
(変数名).Open strSQL, (変数名), adOpenDynamic, adLockOptimistic
ここが黄色で指摘されます。どういうことなのでしょうか?
神様おながいします。MSDNのCD持ってないのもで・・・
0211?NGNG
>>209
せっかく気を使って会社の先輩のせいにしたのに・・・
>>210
SQL文に間違いがあります。
0212デフォルトの名無しさんNGNG
>>192
AccessでTransactionがうまくいかんのは俺もあった。
結局こまめにCommitする事にしました。
0213デフォルトの名無しさんNGNG
>>211
ありがとうございます。
SQL文ですか・・・。具体的にどう間違っているかわからないので
調べてみたいと思います
0214デフォルトの名無しさんNGNG
(*´д`*)アハァ…
0215?NGNG
>>213
SQL文見てないからわからないけど。
表結合していて、それぞれの表に同じ名前の項目があるけれど
どちらの表の項目を見るのか指定してない。
のだと予想してみる。
0216デフォルトの名無しさんNGNG
>>215
ACCESSの方でデータを格納したいレコードの部分の名前にテキスト型なら
うまくいくんですが、整数型にすると「型が一致しないと」
表示されてエラーになってしまいます・・・
0217デフォルトの名無しさんNGNG
>>216
              /⌒彡
     /⌒\    /冫、 )  
     /  ∧ `./⌒ i `  /ゝ
     /  ノ  > ( <     ( \\
  ̄~⌒ ̄ ̄~  \`つ    ⌒ _)
 ̄ ̄ フーン
0218?NGNG
>>216
えー、正直言ってることがわからないですが。
Where句に指定した値が文字列型なら・・・という事でしょうか?
型が一致しないと出てるのならそれが原因でしょう。
具体的に言うと、整数型なら"'"をはずしてやらなければなりません。
Oracleならはずさなくても平気なんだけどね。
0219デフォルトの名無しさんNGNG
>>218
アンタバリバリにできるナ
0220216NGNG
>>218
ありがとうございます。
確かにその通りでした。"'"だと文字扱いになるんですね・・・。
おかげで解決することができました
0221デフォルトの名無しさんNGNG
型チェックにうるさいんだな。つーかAccessのbrokenぶりを見させていただいた
0222デフォルトの名無しさんNGNG
( ´_ゝ`)
0223?NGNG
>>219
そんなことないですよ。まだまだ未熟者です・・・でもありがとう!
>>220
「1つ以上の必要なパラメータの値が設定されていません」
は解決したんですよね?原因がなんだったのか知りたい。
0224PrimeNGNG
厨房三年目です。
技術教師が私に授業で作る例題のプログラムを作れといってきました。
自分で作れないのに技術の教師…時代は変わったのか
0225?NGNG
>>224 中学でプログラミングを教えてるってとこに時代を感じる・・・
0226デフォルトの名無しさんNGNG
普通に教わるよ
家庭科(技術?)で。
高校でBASIC習うんだし。数Aね。
0227216NGNG
>>223
strSQL = "Select * From (名前) " & _
"Where (名前) = '" & (TextBoxの名前).text & "'" & _
"AND (名前) = '" & (TextBoxの名前)..text & "'" & _
"AND (名前) = '" & (TextBoxの名前)..text & "'"

これでやって悩んでいました・・・。"'"をはずして解決しました
0228デフォルトの名無しさんNGNG
>>227 プロの方ではないですよね。課題とかですよね。
TextBoxに 「'」とか「"」とか打つとウマーだし。
0229デフォルトの名無しさんNGNG
ReDim Preserve MyRec(6) As TRec

というように確保した領域って

MyRec() = Nothing

で領域開放できるんでしたっけ?
0230デフォルトの名無しさんNGNG
>>227
好みだけど、↓こー書いた方が見やすいんでない。

strSQL=""
strSQL = strSQL & "SELECT 〜 "
strSQL = strSQL & "WHERE 〜 "
strSQL = strSQL & "AND 〜 "
0231229NGNG
自己レスです。Setが必要でしたね

Set MyRec() = Nothing
0232デフォルトの名無しさんNGNG
>>229
それ動いたか?
0233229NGNG
>>232
実際動かしてみました。
Nothing代入じゃないんですね。

0234229NGNG
freeに相当する関数があるのかという話ですね。
VB側で勝手に開放してくれるのかな?
調べてみます
0235216NGNG
>>230
ありがとうございます。参考にさせていただきます
0236デフォルトの名無しさんNGNG
>>229
明示的に開放したいなら Erase ステートメントで出来ますよ。
0237229NGNG
>>236
watch式でも開放されてるの確認しました。
こんな初歩的な質問にわざわざありがとうございます
0238デフォルトの名無しさんNGNG
どなたか教えてください。
httpプロトコルでファイルをダウンロードしようとしていますが
うまくいきません。
(ステートは12の完了までいくけど、ファイルがどこにも保存されない)

・プログラムのどこか間違っているのでしょうか?
・「GET」コマンドで取得したファイルはどこに格納されるのでしょうか?
 (全フォルダ検索しましたが指定したファイル名はありませんでした)

With Inet1
.URL = "https://aa/aa/bb.lzh"
.UserName = "12345"
.Password = "12345"
.Execute , "GET"
Do While .StillExecuting = True
DoEvents
Loop
End With
0239デフォルトの名無しさんNGNG
>>238
それって自動的にファイルになるのか?
じゃないと保存先のパスとファイル名が設定できないとおかしいと思われ。
0240デフォルトの名無しさんNGNG
>>238
それだけぢゃダメ
Inet1のStateChangedイベントでStateが12になったらGetChunkする。
で、GetChunkしたバイナリ文字列をファイルに書き出していく。
コード書きたいけど面倒+ちょっとうろ覚えw
ぐぐればいくらでもサンプル出てくるけど?
0241238NGNG
>>240

ありがとうございます。

GetChunk の方法なんですが、
ヘルプにあったサンプルで、
ファイルをオープンしていましたが、
どこのファイルをオープンすればいいんでしょうか?
(ソースの txOperation の部分)

よろしくお願いします

Private Sub Inet1_StateChanged(ByVal State As Integer)
Dim vtData As Variant ' Data 変数
Select Case State
' ... ほかの条件のコードは省略されています。
Case icResponseCompleted ' 12
' 出力先のファイルを開きます。
Open txtOperation For Binary Access _    ←???
Write As #intFile

' 最初のデータを読み取ります。注意: バイナリ ファイルを読み取る
' 場合はバイト (Byte) 配列 (icByteArray) を指定します。
vtData = Inet1.GetChunk(1024, icString)

以下 略
0242デフォルトの名無しさんNGNG
みなさん、VB.NETへは以降してるんですか?
どうするんですか?
0243デフォルトの名無しさんNGNG
いんや、まだ6sp5のまま web関連の開発がなくてな
0244デフォルトの名無しさんNGNG
>>241
どこのファイルって、
お前が保存したいそのファイルだよ!
>httpプロトコルでファイルをダウンロードしようとしていますが
そのダウンロード先だよ!
0245デフォルトの名無しさんNGNG
>>243
やっぱ.NETとか言ってるだけあってWeb型のアプリの開発は得意なのか?
ん〜全部データはもってるんだがインスコが面倒でなぁ。
0246デフォルトの名無しさんNGNG
>>242
VBの仕事そのものがあんまりないので、
旧VBもVB.NETも趣味でやってるよ。
0247デフォルトの名無しさんNGNG
>>242
.net の環境が入ったWindowsが出る頃を勉強のメドにしてる人も多そう。
現状、VB6 アプリを.net に移行するって話は、まだ殆ど聞かないね。
Webは全く知らんけど。
0248デフォルトの名無しさんNGNG
Public Kekka(1 to 10) as log
Public Sub Draw()
i=i+1
k=k+1
kekka(i)=k
Text1.text=Text1.text & Kekka(i)
End Sub

とやって、

Private Sub Command1_Click()
Draw
End Sub
とやったのですが、テキストボックスには11111年かなりません。12345となるはずですが・・
0249デフォルトの名無しさんNGNG
>>245
>やっぱ.NETとか言ってるだけあってWeb型のアプリの開発は得意なのか?
ぼちぼち。

>ん〜全部データはもってるんだがインスコが面倒でなぁ。
犯罪者の方でしか?
0250デフォルトの名無しさんNGNG
>>246
そういうのって、場所にもよるべさ。>量
0251デフォルトの名無しさんNGNG
>>248
君、日本語やばいぞ。

Procedure内で宣言した変数ってのは基本的に、Procedure を抜けると、内容は消えるのよ。
嫌なら、Dim の代わりにStatic って書きな。
値が型の上限を越えないように注意ね。
0252デフォルトの名無しさんNGNG
>>249
へぇVB6よりはそっち系の機能充実ってとこ?
ちなみに犯罪者じゃねぇっ。学校側で買ったのを拝借しただけで。
0253デフォルトの名無しさんNGNG
はいわかった。
0254238NGNG
>>244

”GET” コマンドだけで保存先を指定していないので、
どこに保存されているのかわからないので、質問しています。
ディスクの全検索しても同名のファイルは見つかりませんでした。
別の名前でバッファに入っているのでしょうか?
それとも、単純にダウンロードに失敗しているのでしょうか?

244以外の人で、知っている方がいましたら教えてください。
0255デフォルトの名無しさんNGNG
>>252
>学校側で買ったのを拝借しただけで。
業務上横領。コピーの場合ライセンス違反によるごにょごにょ。
0256デフォルトの名無しさんNGNG
>>254
だから根本的にHTTPとプログラミングについて理解していないと思われ。
0257デフォルトの名無しさんNGNG
>>254
悪いこと言わないから、テキストファイルの保存からやり直せ。
自分がいかに電波な事言ってるか解るから。
0258デフォルトの名無しさんNGNG
>>251
ども。iとkをpublicで宣言したら直りました!
なにも宣言しないとdimなのですね。!
おみそれいたしmたした
0259デフォルトの名無しさんNGNG
>>255
むむ・・255ゲトオメってことで許してぇ。

>>254
ん〜
そうやってInetとか使って何かやろうとする以前の問題のような。
なにをするのがExecuteでGetChunkは何をするためのもので
何の為にファイルをOpenしたのかわかるかい?
とりあえず、そういう基本的概念から押さえていってはいかが?
0260238NGNG
どうもお騒がせしました。

Get_Chunk の使用例にあった、

>出力先のファイルを開きます。
>Open txtOperation For Binary Access _ 
>Write As #intFile

の、「出力先」というのを、「GET」コマンドが吐き出した出力先と勘違いしていました。
GET したバッファファイルを取り出して、実際に格納したい出力先 という事ですね。

0261デフォルトの名無しさんNGNG
IEのお気に入りのように動的にメニュー項目を増やしたいのです。

1階層なら、メニューエディタでメニュー配列つくっておいて、
コードで
Load mnuBookmark(1)
mnuBookmark(1).caption = "yahoo"
こんな感じにしたらyahooが動的に作られたりしました。

ここまでは出来たんですが、多階層のメニューを動的に作成する方法が分かりません。
root\検索エンジン\yahooみたいな。
0262デフォルトの名無しさんNGNG
>>261
試してないけど、set 新規アイテム(n).Parent = 親にしたいアイテム
見たいのはダメ?
0263262NGNG
ごめん、死ぬほどダメだ.
0264デフォルトの名無しさんNGNG
今、VBでグラフィックエディタ作ってるんだけどけっこう難しすぃ
どこかグラフィクエディタの作り方の基本的な解説が載ってる
優良サイトってどこか知りませんか?
自分でも探してみたけどいまいちいいのがなかた
0265デフォルトの名無しさんNGNG
お絵かきソフトぐらい作れるだろ?
0266デフォルトの名無しさんNGNG
>>261
多階層メニューを動的にやるには、
APIばーりばーりー、ぼーりぼーりー。
しかもイベントがごにょごにょ・・・。
0267デフォルトの名無しさんNGNG
>>264
グラフィックエディタって言っても、ピンからキリまである。
漠然としすぎ。まずアクセサリのペイントブラシくらいは作れるようになればー。
大まかな作りとしてはあのぐらいなら優しいぞ。
0268デフォルトの名無しさんNGNG
VBで左クリックと右クリックを判定するにはどうしたらいいの?
0269PっNGNG
質問です。VB6,Win2k
ツールバーのあるボタンを押した、という命令を送りたいのですが
普通のコマンドボタンとかならば独自にハンドルをもっているので、それにSendmessageでいけますが
ツールバーだと、ツールバー全体で一つのハンドルのために、
「左から2つめのボタンが押された」っていう命令を送れないんです・・・
これは何か別の方法を使ったりして実装できるのでしょうか?
0270デフォルトの名無しさんNGNG
>>268
MouseDown/MouseUp
0271エンジェルフィッシュNGNG
>>269
API関数のSendMessageで直接送って栗。
0272デフォルトの名無しさんNGNG
右と左をクリックを判定したいんだけど、LeftMouseDownとかないですかね
0273デフォルトの名無しさんNGNG
>>272
Form_MouseDown(Button As Integer
            ~~~~~~~~~コレは一体何でしょうね?
0274デフォルトの名無しさんNGNG
sorry ><
0275デフォルトの名無しさんNGNG
VBでコンソールアプリを作れますか?
VBでCGIプログラムを作りたいんです。
VBScriptでASPは嫌です。
0276デフォルトの名無しさんNGNG
>>275
できます。
だけどAPI多用してめんどくさいです。
http://tokyo.cool.ne.jp/taquino/vbcgi/index.shtml
CGIに使うだけならこのページ参照すればいいかと。
0277デフォルトの名無しさんNGNG
>>275
Perl、C、PHP、Java Servlet、JSP、ASP.NETと
選択肢いろいろあるのに・・・。M?
0278PっNGNG
>>71
いや、APIのSendMessageでやってますけど、
ツールバー全体にしかメッセージを送れないんです。
ツールバー全体に対して「左クリックされました」ってメッセージ送ってもだめだろうなぁと。
「ツールバーの3番目のボタンが左クリックされました」じゃないと。
SendMessageで出来るのならもうちょっと調べてみます。
0279デフォルトの名無しさんNGNG
>>278
ButtonのLeft位置とかが特定できるなら、その値を含めて
WM_LBUTTONDOWN を送ればいいんでわ。
3番目のボタンをクリック、ではなく、3番目のボタンがある座標を
クリック、ってことね。
0280PっNGNG
>>279
なるほど・・・
Hwnd取ったあとでその座標情報を取得して
その位置に合うXとYを指定してメッセージ送信っと。
どうやらわかった気がします。どうもありがとう。
0281デフォルトの名無しさんNGNG
MSHFlexGrid1である範囲の背景色を変えたいんですが
今は .Row  .Colでフォーカスを移動して.CellBackColor で色をつけてるんですが表示が遅いです。
なんとか早くしたいんですが。
0282名無し~3.EXENGNG
>表示が遅いです。
ビデオカードを容量の大きいのに変えろ。
0283InetコントロールでNGNG
HTMLデータをExecuteで取得しているのですが、質問があります。
・Proxyを使う場合は、Proxyプロパティに「Host:Port」って形に入れさせて、IcNamedProxyにすればOK?
・先にそのHTMLデータの全体の容量を調べてからInetでExecuteして、
 「現在35%読み込み済」ってやることは可能?

図々しいですがよろしくおねがいしますー。
0284デフォルトの名無しさんNGNG
>>283
さぁ、実験だ!というのは無しですか?
0285デフォルトの名無しさんNGNG
>>281
アレは何やっても遅いよ。
0286InetコントロールでNGNG
>>284
これでもイロイロ試したんですけどね
Proxyがちゃんと効いているのかどうやって調べれば良いのか分かりませんし。
Google検索でも出ないしヽ(`Д´)ノ
0287281NGNG
>>285
そうなんですか。
あきらめますた。
0288281NGNG
最大化ボタンを押したときのフォームの大きさを指定したいんですがどうしたらいいですか?
0289InetコントロールでNGNG
すみませんProxy使えました。
でも疑問点残りまくり・・・
一回目にProxyでアクセス
 ↓
二回目にダイレクトにアクセス

ってやっても、二回目の結果もProxyを使ったものになってしまう?
まるでひとつのInetには接続方法を一度しか設定できないかのように。
しょうがないのでInetを動的生成してやると上手く行ったのですが、なんか不満が残ります。
0290デフォルトの名無しさんNGNG
初めて標準モジュールを使ってプログラム組んでいるのですが(VB6)
モジュールで取得した値をForm1で宣言した
Texe1.Textに出力し尚且つHairetu(100),Hairetucntで
Form1.Text1.Text = モジュールで取得した値
Hairetu(Hairetucnt) = Form1.Text1.Text
Hairetucnt = Hairetucnt + 1
みたいな感じでやりたいのですが
F5実行させると強制終了になってしまいます
初歩的なことで恐縮なのですがアドバイスお願いできますでしょうか?
0291デフォルトの名無しさんNGNG
>290
CopyMemory使ってないか?
0292デフォルトの名無しさんNGNG
使ってません。
ttp://vbvbvb.com/jp/gtips/0051/gSetClipboardViewer.html
を使用しています。
AAエディタを作りたいと思っています。
(あくまで既存のものに対抗するのではなくあくまでステップアップ的な意味で、です)
0293291NGNG
んじゃどっかにバグがあるんでしょ。

一行ずつ実行してハングする所をチェック、だな。
めんどくせーけど。
0294デフォルトの名無しさんNGNG
すみませんが、位置から基本だけを教えているサイトありませんか?どうも付いてきた本を見ても分からないし、本は高いし・・・どうか教えて下さい。探したけど見つからなかったんです。
0295291NGNG
>294
http://www.google.com/search?hl=ja&inlang=ja&ie=Shift_JIS&q=%8F%89%90S%8E%D2+VB&lr=
0296デフォルトの名無しさんNGNG
ありがとうございました。何とかこの中で詳しいサイト見つけます。
めざせVBマスター(今更恥ずかしいですね)
0297290NGNG
回答ありがとうございます
早速やってみるとします
あと
Hairetu(Hairetucnt) = Form1.Text1.Text
Hairetucnt = Hairetucnt + 1
のHairetuやHairetuxntはForm1で宣言しているのですがそのままモジュール内で使用しても問題なかったのでしょうか?
度々の質問で非常に恐縮ですがお願いします
0298デフォルトの名無しさんNGNG
後もう一つ疑問ですが、Standardでソフトを作ったら有料ソフトにして良いのですか?
0299デフォルトの名無しさんNGNG
>>297
Formで宣言して Bas で使えてるって事は、Public で宣言してるんでしょ?
ならば平気。
0300デフォルトの名無しさんNGNG
フォームにコマンドボタンを貼り付ける作業を
プログラム中で実現することは可能ですか?
もし可能ならばやり方を教えて( ゚д゚)ホスィ
0301何すんのか知らんがNGNG
見えないコントロール配列でも一つ持っときなさいよ。
んで load して Visible = True 。
0302デフォルトの名無しさんNGNG
Private Sub Form_Activate()
  '最初に作っておくのはCommand1(0)のみ。
  Load Command1(1)
  Command1(1).Visible = True
  Command1(1).Top = 0
  Command1(1).Caption = "piyo"
  
  Command1(0).Top = Form1.ScaleHeight - Command1(0).Height
End Sub
0303デフォルトの名無しさんNGNG
>>288
サブクラス化してWM_GETMINMAXINFOを処理せよ。
0304デフォルトの名無しさんNGNG
>>300
VB6ならControls.Add
0305デフォルトの名無しさんNGNG
>>299
どうもありがとうございました。
0306動画無料サンプルNGNG
盗撮モノ!!女子高生・OL・芸能人を隠し撮り!!
http://www.traffimagic.com/WIPE7MMLZCA/comein/FSJPN
0307デフォルトの名無しさんNGNG
>>306
マジで?
0308デフォルトの名無しさんNGNG
>307
ネット初心者ハケーン
0309デフォルトの名無しさんNGNG
>>306
>>307
>>308

    /∵∴∵∴\
   /∵∴∵∴∵∴\
  /∵∴∴,(・)(・)∴|
  |∵∵/   ○ \|
  |∵ /  三 | 三 |  / ̄ ̄ ̄ ̄
  |∵ |   __|__  | < うるせー馬鹿!
   \|   \_/ /  \____
     \____/
0310288NGNG
>>303
ありがとう。
がんばってみます。
0311VB初心者NGNG
質問させていただきます。

Dim s As Single

For s = 0 To 5 Step 0.1
List1.AddItem s
Next s

これを実行すると、リストボックスに 0.1 きざみで 0 から 5 まで
表示される……と思うのですが、
0.8000001
0.9000001
2.799999
などになってしまいます。これはなぜでしょうか?
よろしくお願いします。
0312デフォルトの名無しさんNGNG
漏れは祖父にはもう2,3年は逝ってない。3回ほど万引きに間違えられ
とてもムカついたからだ。他にも買取でモメたり云々・・・
店員の傲慢な態度、”顧客第一”というのはいったいどこへやら・・・
と、いうのを覚えてます。今は違うのかなぁ。
まあ、祖父にはもう二度と逝かないだろう。逝ってよかったことなどひとつも
なかったし。ジャンクは念願のじゃん☆☆神戸店ができたのでそっち行くし。
祖父の会員カードはハサミで2つに切って捨てたし。神戸じゃないけど
祖父っぽい店でしか手に入らないもんは姫路のアプラ井戸に買いに行くし。
それでも手に入らんものは日本橋まででるか通販で買うし。
祖父もバカよのう、漏れなら少なく見積もっても月5万はパーツ買う客だったのに。
0313回避策は自己流でNGNG
>>311
そりゃパソコンの中身が二進数のコンピューターだから。

例えば、小数点以下 4 桁までしか扱えない二進数だと

二進数 十進数
0    0
0.0001  0.0625

こんな感じで 0 から 0.0625 までの十進数を表現できないと。

当然、もっと桁が増えれば差は縮める事が出来て、それが Single と Double で言う、精度の違いって事。んでもやっぱ誤差はあるのね。

まぁ、試しに上の条件で 0.1 を二進数で表現してみな。

# ていうか間違ってないよな…。;;
0314デフォルトの名無しさんNGNG
>>300 Thank You
>>301 Thank You
>>304 Thank You
0315デフォルトの名無しさんNGNG
質問いいでしょうか。
本でみたコードなんですがよくわかりません。

r = color And &HFF
g = (color \ &H100) And &HFF
b = (color \ &H10000) And &HFF

color はあるピクセルの色を取得したものです。
これはなにをやっているのでしょうか。
0316デフォルトの名無しさんNGNG
>>315
r,g,bそれぞれに
R=色のR値
G=色のG値
B=色のB値
を代入している。
0317デフォルトの名無しさんNGNG
>>316
シンプルですばらしい回答ですな。


>>317
論理演算はプログラムの基本なので興味があれば勉強してみるのが吉。
そんなの知らなくてもプログラム組めるじゃん。とか言ってると簡単に行き詰まるよ。
0318デフォルトの名無しさんNGNG
VB6を使っているんですが、
KeyPreview で、tab と、Shift + tab がつかめないんですが、

tab が押されたのを判断するにはどうすればいいんでしょうか?
0319315NGNG
>>316 , 317
ありがとーっす。勉強してみます。
0320デフォルトの名無しさんNGNG
>>318
↓API使えば、できるよ。

Public Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
0321?NGNG
>>318
普通にできるはず。KeyCode = 9 Shift = 1
KeyPressイベントでやってない?KeyDown or KeyUpイベントでやりましょう。
0322デフォルトの名無しさんNGNG
大佐の人生♪
あっぱれあっぱれあっぱれあっぱれ大変だ♪
0323デフォルトの名無しさんNGNG
大学のVB6.0で作ったプログラムのファイル一式を自宅のVB6.0(アカデミック)で編集する事はできたのに、
大学図書館のVB6.0SP3だと読み込んだらVBが勝手に終了してしまいます。なぜでしょう?
0324デフォルトの名無しさんNGNG
>>323
SP6にしてみたらよ?
0325324NGNG
SP5の間違いですた
0326323NGNG
>324
図書館のバージョンを勝手に換えるわけにはいかないです。
しかたないので研究室のパソコンの順番待ちをします。
0327デフォルトの名無しさんNGNG
どうでもいいが貧乏な大学だな・・・。
うちマシン普通に余ってるけど・・・。
0328デフォルトの名無しさんNGNG
指定した時間がきたら、処理を行うプログラムを作りたいのですが、
timeステートメントで時刻を常時監視するしかないのでしょうか?
時間がきたら、OSから通知させる方法ってありますか?
0329デフォルトの名無しさんNGNG
>>328
settimerは一定時間後にOSから連絡があるね。
じゃあタイマーコントロールでいいじゃんというお話。
0330デフォルトの名無しさんNGNG
>327
うちは分析屋だから分析機やその端末がメインなんだよ。
普段は必要な人がワードとエクセルを使うだけ。
0331デフォルトの名無しさんNGNG
VB6.0 ADO+Oracleでストアドプロシージャから
件数が複数ある戻り値を取得したいのですが、上手く行きません。
どこが間違っているかご指導お願いできますでしょうか。

Set objADOcmd = New ADODB.Command
Set objADOcmd.ActiveConnection = cnn
 objADOcmd.CommandText = "tst_Get_Cursor_pkg.tst_Get_Cursor"
objADOcmd.CommandType = 4
 Set p0 = objADOcmd.CreateParameter
p0.Direction = adParamOutput
p0.Type = adChar
p0.Size = 19

Set p1 = objADOcmd.CreateParameter
p1.Direction = adParamOutput
p1.Type = adInteger

objADOcmd.Parameters.Append p0
objADOcmd.Parameters.Append p1
objADOcmd.Execute
MsgBox p1.Value
0332 ◆AeRNbA9k NGNG
VB5 SP3でやってます。
コモンダイアログボックスを表示(.ShowSave)すると画面の左上に表示されます。
画面中央に表示させたいのですが、何かいい方法はないでしょうか?
0333デフォルトの名無しさんNGNG
VBでAccessDBからデータ引っ張ってきて、それをExcelに出力し、
最後にそのExcelを表示しようとして
exlApp.Visible = True
としたのですが、なぜかExcelの枠だけが表示され、
セルの部分が透明になって表示されません(一つ下のウインドウが見えています)。

メニューバーとツールバー及び、数式バーは普通に表示されており、
セル部分も透明なのを除けば、通常通りクリックすると数式バーに値が表示されます。

何が悪いのでしょうか。
0334デフォルトの名無しさんNGNG
>>333
VBからEXCELファイルを新規作成した時、俺も同じ現象に陥った。
試行錯誤した結果あきらめた。
あらかじめ、ファイルを用意しておけば問題ない。
0335デフォルトの名無しさんNGNG
>>333
WorkBookをAddしてないからじゃない?
0336デフォルトの名無しさんNGNG
>>335
俺もそう思う。そんなに難しい問題じゃなかったはず。
0337デフォルトの名無しさんNGNG
>>333
CreateObjectやNewを省略して暗黙のインスタンスを使ってるから。
0338?NGNG
>>331
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
Set rs = objADOcmd.Execute
で後はrsを参照
0339デフォルトの名無しさんNGNG
教えてください。
フォームのテキストボックスは、indexによって1次元の配列はできると思いますが、
2次元の配列は作成可能ですか?

それが無理でしたら、
プログラム側の2次元データを、
フォーム側の2次元の表(1個1個独立したテキストボックス)に表示する
簡単な方法はありませんか?
0340331NGNG
>>338さん

レスありがとうです。
ごめんなさい、全然解らないです。。。

 objADOcmd.Parameters.Append p0
 objADOcmd.Parameters.Append p1
 objADOcmd.Execute
 を

objADOcmd.Parameters.Append p0
 objADOcmd.Parameters.Append p1
Set rs = New ADODB.Recordset
Set rs = objADOcmd.Execute
MsgBox rs.Fields(0).Value

に変えてみましたが、こう言う事であってるでしょうか。
でも動かなかったので間違ってますよね・・・
すいません、詳しく教えていただけますでしょうか。
0341333NGNG
>>335-336
Addしてます。
>>337
Set exlApp = New Excel.Application
ですよね?これもやってます。


一度Excelアプリケーションごと閉じて、再度開くと
普通に開くことが出来るので、仕方なしにそれでやってます。。。
0342デフォルトの名無しさんNGNG
>>341
dim xl as object
set xl = createobject("excel.application")
xl.workbooks.add
xlapp.visible=true

でとりあえず表示できたけど、だめ?
0343334NGNG
>>333
↓これで出来たよ。

Dim objExcel As Object
Dim objBook As Object
Dim objSheet As Object

Set objExcel = New Excel.Application
Set objBook = objExcel.Workbooks.Add
Set objSheet = objBook.Worksheets(1)

objExcel.Visible = True
0344333NGNG
>>342-343
ありがとうです。
お2人の書かれている事とほぼ同じことをしています。
そして、内部の処理をすっ飛ばすと、問題なく表示されるようです。
何が悪いのか自分で調べます。
ありがとう。
0345337NGNG
>>341
> Set exlApp = New Excel.Application
> ですよね?これもやってます。
これもだけど、
exlAppのメンバとして書かないといけないところを
うっかりミスで省略してしまった時も、
暗黙のインスタンスを使っていることになるよ。

具体例としては
  exlApp.Range(exlApp.Cells(1,1), exlApp.Cells(1,2))
と書くべきところを
  exlApp.Range(Cells(1,1), Cells(1,2))
と書いてしまっていたり。
0346?NGNG
>>340 どこでどんなエラーが出るの?
0347_NGNG
とあるアプリを作っていて
マウスジェスチャーを実装しようと思うんですが・・・作り方にちょっと迷っています。
出来る限り誤審がなくて、上下左右を複数回数いくらでも調べれれば最高なんですが。

どういう方法でやるのがスマートだと思われますか?
とりあえず、出来れば何でもいいってのもありますが。
0348デフォルトの名無しさんNGNG
GetCursorPosとタイマー使って仮想ラインを考えて判断
0349デフォルトの名無しさんNGNG
どなたか、お願いします。
フォームのテキストボックスは、indexによって1次元の配列はできると思いますが、
2次元の配列は作成可能ですか?

それが無理でしたら、
プログラム側の2次元データを、
フォーム側の2次元の表(1個1個独立したテキストボックス)に表示する
簡単な方法はありませんか?
0350デフォルトの名無しさんNGNG
>>317
細かいツッコミで申し訳ないけど、「論理演算」ではなく、「ビット演算」でしょ?

ついでに、(>>317さんは当然ご存知かと思いますが)VBの論理演算子は短絡評価できない
点にも注意。(論理演算子とビット演算子が兼用だから)
(VB.NETでは、短絡評価用の演算子が追加されました)
0351デフォルトの名無しさんNGNG
>>349
テキストボックスで表を作るなんて仕様では
みんな相手する気にならないんだろうな、きっと。
0352349NGNG
>>351

一般的には、どういう方法をとるんですか?
初心者なもんで、教えてください。
0353デフォルトの名無しさんNGNG
http://www.39001.com/cgi-bin/cpc/gateway.cgi?id=kntkntknt
これよくない?
0354デフォルトの名無しさんNGNG
>>352

どんな趣旨、目的で、どんなカタチのモノを作ろうとしているのか、意図する
ところがサパーリわからんので、コメントのしようがありません。

> 初心者なもんで、教えてください。
初心者なら、大いに勉強するよろし。
0355349NGNG
>>354

10*6の2次元配列のデータを、フォームに表示したいです。
フォームからの入力は無く、表示だけです。

どういった方法が、良いのでしょうか?
0356デフォルトの名無しさんNGNG
>>355
Print
0357デフォルトの名無しさんNGNG
>>355

> 10*6の2次元配列のデータを、フォームに表示したいです。

それは「手段」であって、「目的」ではない。

こちらは、「どこに、何しに行くのか?」と聞いている(当然、
「東京に彼女に会いに行く」、といった答えを期待している)
のに、君は、「10:06の発の「のぞみ」に乗りたい」と答えている
ようなものだ。

日本語が読めるなら、
>>354
を16回ほど読み直しなさい。
0358デフォルトの名無しさんNGNG
>>357
きみもちょっとおかしいよ。
東京に行く手段を聞いてるのに、彼女に会いに行くって答えられても困る
0359デフォルトの名無しさんNGNG
>>349 が舌足らずなのは、良いとして >>357 も結構脳足らずだな。
「東京に彼女に会いに行く」のが手段ではなくて目的だとか言ってるが、
実は最終目的である「彼女と一発やる」と言う目的のための手段とも言え
るぞ。
まあ本人が、「10*6の2次元配列のデータを、フォームに表示したい
です。」って言ってんだから、素直に 60個 テキストボックス (入力無い
なら、ラベルでもいいかな) のコントロール配列作って、
TextBox1(10 * 行 + 列) みたいにしてアクセスりゃ良いんじゃない ?
(行/列は、反対かも知れんが...。) まあ、俺なら面倒だから FlexGrid
コントロールあたりを使うと思うけど...。
0360デフォルトの名無しさんNGNG
>>359
>>351の時点でその書き込みをしていたら、いい人になれたのにね。
0361デフォルトの名無しさんNGNG
>>349
まさか何十個もテキストボックスをフォームにペタペタすんの?
リソースの無駄使いだよ。フレキシブルグリッドとか使った方が良いと思われ。
又は自前で格子を描画するとか。
間違いなくそのプログラムは構造上問題がありますよ。
0362デフォルトの名無しさんNGNG
だが実際、そういうVBアプリをよく見かけるという罠。
そんなことするからVB厨とか言われるんだよな(藁
0363349NGNG
どうもありがとうございました。
flexgrid というのでやってみます。

舌足らずで失礼しました
0364デフォルトの名無しさんNGNG
てか表示だけならわざわざテキストボックス並べる事もないだろ。
0365デフォルトの名無しさんNGNG
>>321
TABキーはWindowsが拾うから、
TabStop=Trueなコントロールを複数置いている場合は
KeyPreview=Trueにしてる状態でKeyDownでも拾えない。

>>332
ttp://www.kit.co.jp/vbit/QAndA.htm

>>350
>細かいツッコミで申し訳ないけど、「論理演算」ではなく、「ビット演算」でしょ?
ビット演算自体が論理演算だぞ。

0366デフォルトの名無しさんNGNG
>>358 >>359よ
355の
>10*6の2次元配列のデータを、フォームに表示したいです。
が実装レベルの得られる結果を言ってるのに対して、
354の求めるものは、それの利用目的を聞いているだけだろって357の
ツッコミは妥当だと思うぞ。

>「東京に彼女に会いに行く」のが手段ではなくて目的だとか言ってるが、
>実は最終目的である「彼女と一発やる」と言う目的のための手段とも言えるぞ。

本論から離れてるだろ。君の言うところは、3番だな。
1.実装 10*6の2次元配列のデータを、フォームに表示
2.機能 マスタメンテ用の項目A〜Zを表形式で入力するUI作成
3.目的 システムを作ることで利益を上げる
0367デフォルトの名無しさんNGNG
テキストボックスで表を作成した例ね。
ttp://www.woodland.co.jp/erp/V3.htm
0368デフォルトの名無しさんNGNG
>>366
> 3.目的 システムを作ることで利益を上げる
システムを作ることで利益をあげて、来年は上場だ !!
利益をあげることだって、単なる手段とも言えるんだよ。
同じ事柄でも、見方によって違うって言うのが理解できないの ?
0369デフォルトの名無しさんNGNG
>>365
> ビット演算自体が論理演算だぞ。
「ビット演算」とは、「ビット毎の論理演算」の通称で、通常言う論理演算とは
別物。>>350 も、短絡評価とか書いてるんだから、それぐらい理解してやれや。
0370デフォルトの名無しさんNGNG
>>368
354の意図がそんなところにあったと君は思うわけ?
0371369NGNG
>>369
読み直すと、ちょっと意味の取り間違えそうな文章だ。
× >>350 も、短絡評価とか書いてるんだから、それぐらい理解してやれや。
○ >>350 には、短絡評価とかも書いてるんだから、>>365 もそれぐらい理解し
てやれや。
0372365NGNG
>>369
>「ビット演算」とは、「ビット毎の論理演算」の通称で、
もちろん、おれもそれは知った上で突っ込んでる。

>通常言う論理演算とは別物。
350がそう言いたいのだろうということも理解した上で突っ込んでる。

350>「論理演算」ではなく、「ビット演算」
ビット演算も論理演算(の一種)だから、
「正確に言うなら論理演算というよりもビット演算」
という方が妥当だし、誤解もない。

350>(論理演算子とビット演算子が兼用だから)
兼用なのではなく、ビット演算子しかない。そして、それは論理演算子とヘルプでは呼ばれている。
#前橋本のJavaにはポインタしかないって主張と似たこと言ってるな・・・
#漏れもDQNだ・・・逝ってきます

ま、半分ネタみたいなもんだから、気にするな。
0373デフォルトの名無しさんNGNG
>>317はあえてネタフリで論理演算って書いたんだろ。
良かったな。たくさん釣れて。
0374?NGNG
>>365 あら。Sorry
0375332 ◆AeRNbA9k NGNG
>>365
ありがとー。
0376デフォルトの名無しさんNGNG
>>373
八つ当たり(・へ・)イクナイ
0377331NGNG
>>346
レスが遅くなって申し訳ありません。

Set rs = objADOcmd.Executeの部分で、引数が正しくないと言うエラーが出るのですが、
間違いなく引数の数は合っているのです。
なので、SQLの検索結果の値が複数あることが要因なのかと思ったのですが、
値が複数ある場合、戻り値の取得の仕方は変えなければならないのでしょうか。


0378357NGNG
>>359
俺は脳足らずじゃねえよ!!糞野郎!!
0379デフォルトの名無しさんNGNG
コマンドボタンを見えない状態(Visible=true)すると不可視状態って言うじゃないですか?

コマンドボタンとか押せない状態(Enable=False)にした状態を日本語で言うと
なんて言いますかね?
0380デフォルトの名無しさんNGNG
>>377
>Set rs = objADOcmd.Executeの部分で
テーブル名とか伏字でもいいから書いてほしかったりする
0381デフォルトの名無しさんNGNG
>>379
無効
0382デフォルトの名無しさんNGNG
>>378

なりすましはヤメレ。

・・・コテハン使うべきか?
0383デフォルトの名無しさんNGNG
例えば
If 増やしたい時 Then
Count = Count + 1
list1.additem Count
EndIf
のようにしてリストボックスの項目を増やしていく時
上記の場合だと
┏━┓
┃..1.┃
┃..2.┃
┃..3.┃
┃..4.┃
┗━┛
と言う感じになりますが
これを
┏━┓
┃..4.┃
┃..3.┃
┃..2.┃
┃..1.┃
┗━┛
と言った感じに上から追加ってなことって出来ないんでしょうか?
0384デフォルトの名無しさんNGNG
カウントダウンすりゃいいじゃん。
Count = Count - 1
って。
0385デフォルトの名無しさんNGNG
ごめん間違い。
0386デフォルトの名無しさんNGNG
List1.AddItem Count, 0
コッチがあたり。
0387デフォルトの名無しさんNGNG
>>383はヘルプでAddItemを調べたことがあるのだろうか?
0388383NGNG
当方の怠慢故に皆様のお手を煩わせたことを先ず謝罪いたします。申し訳ございませんでした。
ソレにもかかわらず回答、アドバイスしてくださった>>385-387さんには深くお礼申し上げます
ありがとうございました
0389デフォルトの名無しさんNGNG
>>387
IDEの使い方で最初に憶えなければいけないのが、[F1](ヘルプ)、
[F2](オブジェクトブラウザ)、[Ctrl] + [G](デバッグウィンドウ)、
[Shift] + [F2](定義元へのジャンプ)あたり。
新人教育担当の方、よろしく。
0390デフォルトの名無しさんNGNG
ピクチャーボックス内で画像をスクロールさせたかったので
MSDNの<スクロール バー コントロールの使用例
: スクロール可能なグラフィックス ビューポートの作成>
のコードをそのままコピーして実行したんですけど、
スクロールバーが出現してくれないんです。画像はでるんだけど。
もちろんウィンドウよりでかい画像を表示させようとしてるんですが。
考えられる理由ありますか?
0391デフォルトの名無しさんNGNG
>>390
「子ピクチャの全体が画面に表示できるかどうかを判別します。
表示できる場合、スクロール バーは不要です。」って書いてる。
フォームサイズを小さくするか、以下のコードをコメントすれば出るよ。
VScroll1.Visible = (Picture1.Height < Picture2.Height)
HScroll1.Visible = (Picture1.Width < Picture2.Width)
0392デフォルトの名無しさんNGNG
>>391
その2行コメントにしたり、フォームサイズ小さくしたんですけど
どうにもスクロールバーはでてくれません。
なんででしょうか?

0393デフォルトの名無しさんNGNG
標準もじゅるってSingletonだったんすね。

もじゅる名.ぷろぱち名 = 値
上のコード動いた。
0394デフォルトの名無しさんNGNG
プロパチ名 = 値
だけでも動いてしまう罠。
0395発破NGNG
HTMLやXMLを記述することをプログラミングと言わないのは
何故ですか??
0396デフォルトの名無しさんNGNG
メールボムってどうやって入手したらいいですか?
0397デフォルトの名無しさんNGNG
>>396
ネタやるなら住人のノリの良い板に行った方がいいと思われ。
0398デフォルトの名無しさんNGNG
>>396
自分のメアド晒せば簡単に手に入る。やってみろ。
0399デフォルトの名無しさんNGNG
>>395
ネタかと思ったがマジらしいな。
HTMLもXMLもマークアップ言語でプログラミング言語ではない。
それからマルチすんな氏ね。
0400347NGNG
>>348
反応遅くなってすみません。
なるほど。やっぱりカーソル位置取得する関係上GetCursorPosは必須ですか。
にしても「仮想ラインを考えて判断」って、俺の蟹味噌にはチンプンカンプンです・・・
どうやって判定するといいんだろ。適当に作ってみたんですがぐちゃぐちゃになっちゃったw
とりあえずもう一度組み直してみるです。
0401デフォルトの名無しさんNGNG
16776960をRGB(■,■,■)にしたいんだけど■の部分が知りたいんだけど
どうしたええの( ゚д゚)
0402デフォルトの名無しさんNGNG
>>401
共用体
0403デフォルトの名無しさんNGNG
>>401
256*256*256
0404デフォルトの名無しさんNGNG
シーケンシャルモードで任意の行数を読み込ませるにはどうすればいい
のでしょうか?
ランダムモードだとgetでレコードを指定すれば出来ますが、シーケンシャルモード
で8行目を読ませたい等と言うときは・・・
0405デフォルトの名無しさんNGNG
全部読み込んで改行数えるなりsplitで取り出すなりどうぞ。
0406デフォルトの名無しさんNGNG
VBScriptのコーディング規約みたいなのって
どっかにないでしょうか?
0407デフォルトの名無しさんNGNG
>>406
VBに準ずる(殉ずる、ではない)でよいと思う。
具体的には、VB用のコーディング規約を基に言語仕様上の相違点(例 : VBScriptでは
アーリーバインドができない)を考慮しつつ変更を加えればよい。
0408デフォルトの名無しさんNGNG
アイコンの変え方なんですけど、
各ダイアログや、メインで使用するフレームは変える事ができたんですけど、
「ALT」+「TAB」で出る大きいアイコンの変え方が分らないんですよ。
お願いします。
0409デフォルトの名無しさんNGNG
>>404
ループで読んで、8回目。
0410デフォルトの名無しさんNGNG
>>405
>>409
サンクスです。もう一度試行錯誤してみます
0411デフォルトの名無しさんNGNG
>>392
バーを貼る位置が間違ってると思われ。

0412?NGNG
>>408
メニュー プロジェクト>***のプロパティ をクリック
ダイアログ「実行可能ファイルの作成」タブにアイコンを設定する所がある。
それとフレームじゃなくてフォームね。
0413331NGNG
>>380さん

あ、そうですね。すいません。。
テーブル名は tst_meisai

項目は
tst_meisaiID,tst_itemnun,tst_part,tst,amount,tst,tst_comm,tst_cost,tst_date

ストアドの内容は、戻り値が二つで、全件検索でtst_dateと成否を01で返してます。
0414デフォルトの名無しさんNGNG
金がないのでVB買えません。
IE+VBScriptでもVBの勉強はできますか?
0415?NGNG
>>413
tst_dateってことは引数はDate型じゃないの?
検索条件は渡さなくていいの?

そのストアド、動作確認はされてる?
他のストアドはちゃんと動いてる?
0416?NGNG
>>415 引数じゃなくて戻り値だ。ごめん。
0417?NGNG
>>414 VBAのほうがいいんじゃない?
0418デフォルトの名無しさんNGNG
最近のRDBほどの機能は必要ないけど、テキストファイルじゃ役不足。
そんな時に使えそうな、動作・サイズが軽いDB(?)って無いでしょうか?
0419デフォルトの名無しさんNGNG
>>418
> 最近のRDBほどの機能は必要ないけど、テキストファイルじゃ役不足。
どーゆー機能が必要かによる。
一意のキーで項目を取得したいならiniファイルでいいようなきもするけど。
0420デフォルトの名無しさんNGNG
ControlとObjectの差を教えて下さい。
 Dim t1 As TextBox
 Dim t2 As Control
 Dim t3 As Object
であれば、上から順に処理が早い気がします(正確には分かりません…)が、
下2つの意味がカブっているように思えて仕方ないっす。
0421デフォルトの名無しさんNGNG
>>420
>  Dim t1 As TextBox
>  Dim t2 As Control
>  Dim t3 As Object
> であれば、上から順に処理が早い気がします(正確には分かりません…)が、
> 下2つの意味がカブっているように思えて仕方ないっす。
どちらかっていうと上2つの意味がカブってる。
Objectはデータ型で、その他二つはオブジェクトのアーリーバインディング。
0422初心者NGNG
一個のWinsockで1対nのチャットを作りたいんですけど、
どうすれば1対nでできるかわかりません。
おすえてくださいお願いしまふ
0423デフォルトの名無しさんNGNG
>>422
>どうすれば1対nでできるかわかりません。
友達を作る
0424デフォルトの名無しさんNGNG
>>421はネタ。
0425?NGNG
>>420
上は事前バインディング、中・下は実行時バインディング。なので上が速い。
中・下は確かにカブってるが、下はコントロール以外のオブジェクトも使えるという違いがある。
0426デフォルトの名無しさんNGNG
すみません。とあるプログラムで登録、更新、削除、検索、終了の機能を持った
ものを作っているんですが、Case文でF1で登録・F3で終了・F6で更新・F9で削除
というふうにしたつもりなのですが

Private Sub ○○_KeyDown(KeyCode As Integer, Shift As Integer)
Dim KeyAscii As Integer
KeyCode = (Case文のある関数名)(KeyAscii, KeyCode)
End Sub

Private Function (Case文のある関数名)(KeyAscii As Integer, KeyCode As Integer) As Integer
Select Case KeyAscii
Case KeyCode = vbKeyF1
(登録の関数名)
Case KeyCode = vbKeyF3
Unload Form1(終了)
Case KeyCode = vbKeyF4
(初期化の関数名)
Case KeyCode = vbKeyF6
(更新の関数名)
Case KeyCode = vbKeyF9
(削除処理の関数名)
Case KeyCode = vbKeyReturn
(検索の関数名)
End Select
End Function

でコーディングしたのですが、うまくいきません・・・。
どの部分が間違っているのでしょうか?
0427デフォルトの名無しさんNGNG
ちなみにIf文で

Private Sub ○○_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyF1 Then
(登録の関数名)
ElseIf KeyCode = vbKeyF3 Then
Unload Form1(終了)
ElseIf KeyCode = vbKeyF4 Then
(初期化の関数名)
ElseIf KeyCode = vbKeyF6 Then
(更新の関数名)
ElseIf KeyCode = vbKeyF9 Then
(削除処理の関数名)
ElseIf KeyCode = vbKeyReturn Then
(検索の関数名)
End If
End Sub

とコーディングした際にはちゃんとどの機能も動作しました
0428?NGNG
>>426 >>427
KeyAsciiの値が常にゼロだから。
宣言しただけで値入れてないでしょ。
0429?NGNG
いやそれだけじゃないな。なんじゃこのSelect文は。
これだとF1時に終了、それ以外は登録になる!?
0430?NGNG
はい。
Private Sub ○○_KeyDown(KeyCode As Integer, Shift As Integer)
(Case文のある関数名) KeyCode
End Sub

Private Function (Case文のある関数名)(KeyCode As Integer) As Integer
Select Case KeyCode
Case vbKeyF1
(登録の関数名)
Case vbKeyF3
Unload Form1(終了)
Case vbKeyF4
(初期化の関数名)
Case vbKeyF6
(更新の関数名)
Case vbKeyF9
(削除処理の関数名)
Case vbKeyReturn
(検索の関数名)
End Select
End Function

0431426NGNG
>>428&>>429
レスありがとうございます。
>>429さんの言うとおりF1を押すと終了でそれ以外は登録処理を行うような動作をします。
なぜなのか理屈がわからない・・・
0432?NGNG
>>431
さっきも書いたけどKeyAsciiの値が常に0。
そしてVBでTrueは-1、Falseは0。
F1の時
  KeyCode = vbKeyF1はTrue、=-1、<>KeyAscii。
  KeyCode = vbKeyF3はFalse、=0、=KeyAscii。
なのでCase KeyCode = vbKeyF3の処理をする。
F1以外の時
  KeyCode = vbKeyF1はFalse、=0、=KeyAscii。
なのでCase KeyCode = vbKeyF1の処理をする。
0433426NGNG
>>432(神!)
ありがとうございました。>>430の通りコーディングした結果ちゃんと動作しました。
理屈を覚えないとまた同じ繰り返しになるのでこれからじっくりと解析してみます
0434デフォルトの名無しさんNGNG
DBから帳票出力する際に、処理に時間がかかるので、
「出力中なのでしばらく待ってね」
みたいなこと書いた小さいフォームを前に出して、バックで
処理を行いたいのですが、この時、小ウインドウをモーダルで開き、
その他の部分に触られたくないと思うものの、モーダルだと
処理も止まってしまうので困ってます。
こういう場合、一般的にはどういう処理を行うのでしょうか。
0435デフォルトの名無しさんNGNG

SPREADで、特定のセルにフォーカスを当てたいときはどうすればいいですか?

よろしくです。
0436?NGNG
>>434 一般的かどうか知らないけど思いついたものを。
Form1.Enabled = False
Form2.Show
Form2.Refresh
時間のかかる処理
Unload Form2
Form1.Enabled = True
0437?NGNG
>>435
fpSpread1.Row = ???
fpSpread1.Col = ???
fpSpread1.Action = ActionActiveCell
0438FIGHTNGNG
現在VB6.0とアクセスを使用しております。
  Set cn = New ADODB.Connection
Set sRs = New ADODB.Recordset
With cn
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & path
.Open
.CursorLocation = adUseClient
End With
strSQL = "SELECT Table.*FROM Table
sRs.Open strSQL, cn, adOpenStatic, adLockOptimistic
上記のように記述して[sRs]にレコードをセットしているのですが、
sRs.Delete
をした場合に下記のようなエラーがでます。この現象は一回Updateで
DBに登録して、その登録したものに対して削除かけようとしたら発生します。
でまた、プロジェクトを閉じて、再度実行してデリートすれば下記のエラーは発生しません。
このような経験のある方のアドバイスよろしくおねがいします。
実行時エラー21247217864
行がみつからなかったため、更新できません。列の値は最後に読み込まれた後で変更された可能性があります。

0439デフォルトの名無しさんNGNG
>437

即レスサンクス!!
0440デフォルトの名無しさんNGNG
>>438
sRsが指し示すレコードがなかったんでしょ。
.BOF/.EOFのチェックしてる?
0441418NGNG
>419
なるほどiniファイルも小さなデータベースとして使えますね!メモメモ。

機能としては、レコードの追加・削除・更新、あとは項目を指定してのソートと検索が出来れば文句無しだと思っています。
アプリ中のログ管理とか、ちょっとしたデータ管理とか、汎用的に使いまわせるようなものを探しています。
自分でクラスモジュールでも書いちゃったほうが早いですかね?
0442?NGNG
>>438 adOpenStaticをadOpenKeysetかadOpenDynamicに変えたら動いたりしないかな?
0443FIGHTNGNG
>440
EOF,BOFともにFALSEであり、しかも削除するレコードも存在してます。
>442
わたしもこれをはじめにためしたのですが、結果は一緒でした。
0444デフォルトの名無しさんNGNG
http://yahooo.s2.x-beat.com/
0445デフォルトの名無しさんNGNG
XP+Access VBAについてです
テキストファイルへ文字列を出力するとき、ダブルコーテーションを(”)
つけないようにする方法はありますでしょうか?

どなたか、ご親切な方、ご教授くださいませ


0446デフォルトの名無しさんNGNG
今はどうやってんのよ
0447?NGNG
>>443 RequeryかResyncメソッド使ってみたら?
0448445NGNG
>>446

今は OPEN WRITE でやってます
0449FIGHTNGNG
>447
ありがとうございます。
一回登録するときに「Update」したあとに「Requery」かけたら
削除するときにエラーがでなくなり通常通り削除できました。
しかし前やったときはRequeryはしなかったのに削除できたんですけどね・・・。
こういう現象というのはあるんですね。
0450デフォルトの名無しさんNGNG
>>445

Dim fNum As Integer
Const fNm = "a.txt"

fNum = FreeFile
Open fNm For Append As #fNum
Print #fNum, "A"
Close #fNum
0451445NGNG
>>450
有難うございました
0452デフォルトの名無しさんNGNG
アドバイスお願いします。

メイン処理 と タイマイベント処理 があります。
メインがある処理まできたら、指定した時間がくるまでメインの処理を中断して、
タイマイベント処理で、その指定した時間がきたかチェックして、
時間がきたらメインに通知して処理を再開させたいです。

タイマ側での時間の経過チェックの方法まではわかったのですが、
メイン側でどうやって処理の中断をして、
タイマ側でどうやってメインの処理を再開させればいいのかがわかりません。

よろしくお願いします
0453?NGNG
>>449 根本的解決じゃないからスッキリしないな・・・何か原因があるはず・・・
0454デフォルトの名無しさんNGNG
みなさんとても親切ですね。知識もありますし。
プロとして開発やってたりする人達なのかな・・・?
0455デフォルトの名無しさんNGNG
VB6.0でシステムトレイに納めるにわどうしたらいい?
0456421NGNG
>>424
> >>421はネタ。
ネタじゃないのに。。。

オブジェクトブラウザではTextBoxもControlもクラスとされています。
TextBoxのスーパークラスがControlでしょ?
であるから
>  Dim t1 As TextBox
>  Dim t2 As Control
>  Dim t3 As Object
の一番の差異は上二つがインスタンス生成、一番下がオブジェクト型の変数生成であることだと
おもったのですが。。。
ていうか、>>421の表現はまちがってますね。(^^;

識者の方のご意見お願いします。m(_ _)m
0457デフォルトの名無しさんNGNG
>>455
http://homepage1.nifty.com/MADIA/vb/API/Shell_NotifyIcon.htm
0458419NGNG
>>441
> 機能としては、レコードの追加・削除・更新、あとは項目を指定してのソートと検索が出来れば文句無しだと思っています。

そこまでの機能が必要ならRDBMS使ったほうがよいとおもう。

> アプリ中のログ管理とか、ちょっとしたデータ管理とか、汎用的に使いまわせるようなものを探しています。
> 自分でクラスモジュールでも書いちゃったほうが早いですかね?

ログ管理はWindowsのシステムロギングをつかうのが楽。
0459デフォルトの名無しさんNGNG
>>452
簡単に言ったら、メイン処理を一定時間だけ中断したいってことでしょ?
0460_NGNG
>>152
いちいちそんな面倒なことしなきゃいけない理由はお有りですか?
どうしてもTimerを使ってやる必要がある!ってならこのレス読み飛ばしてください。

APIのSleep使って一定時間処理止めてやってください。
0461_NGNG
スマソ
152 > 452
0462434NGNG
>>436
ども、>>434です。
FORM2で作業するんすね。
できれば、Windowsのジョブ自体止めたいですが、さすがに無理ですかね?
例えばAlt+Tab押しても切り替わらなかったり、ミ田キー押してもメニューでなくなったり。


しかし関係ないけど、この(*´д`*)アハァ… はいいなぁ。
見つけやすいし。
ずっと使って欲しい。
0463デフォルトの名無しさんNGNG
ActiveXでサーバの役割をするアプリケーションを作ったのですが
呼び出し元のアカウント?が違うとそのアプリケーションにアクセス出来ません。
元々呼び出し元は一つだったのに気にして無かったのですが仕様が変わってしまい
しかも運用方法の制限が有ってDCOMCNFGでの設定をいじっても解決できません。
で、呼び出し元用に子EXEで作って常にAdminアカウント下で呼び出せば解決する
様な気がするのですがあってるでしょうか?(というか一つの呼び出し元ではアカウント
指定出来るので・・・)また実現方法等ありましたらご教授お願いしますm(_ _)m
0464424NGNG
>>456
ネタじゃないなら一応マジレスしとくよ。

> TextBoxのスーパークラスがControlでしょ?
TextBox型の内部にControlインターフェイスが
実装されているという点だけ見れば間違いではないけどね。
でもそれはObject型でも同じ。

すべてのコントロールの、(IUnknownとかIDispatchを除いた)
カスタムインターフェイスの部分に共通して
「メンバ名に対するバイナリ互換性」がない限りは、
Control型のVTable経由で(つまりアーリーバインド)で
直接メンバを呼び出すことは不可能。

実際に、Control型は単にIDispatchに別名を持たせた
ようなもので、アーリーバインド用のメソッドは
持っていない。
つまり、Object型との違いは代入時の型チェックだけ。

> の一番の差異は上二つがインスタンス生成、
> 一番下がオブジェクト型の変数生成であることだとおもったのですが。。。

インスタンス生成っていうのは全然違うよね。
これらの宣言だけでは変数はインスタンスを生成しない。
あんたの言葉を借りれば3つとも「変数生成」です。

これらの変数にインスタンスを持たせるには、
Setステートメントでオブジェクト(インスタンス)を
参照する必要がある。
0465デフォルトの名無しさんNGNG
>>459-460
メインの処理を止めてる間に、違う事したいんじゃないのかな ?

Sub Form_Load()
 Call メインの処理_途中まで。
 Timer1.Interval = 待ち時間
Timer1.Enabled = TRUE
End Sub

Sub Timer1_Timer()
 Timer1.Enabled = FALSE
 Call メインの処理_続き
End Sub

みたいじゃダメか ?
0466421NGNG
>>464
THX!
理解できました。
0467デフォルトの名無しさんNGNG
ソフト側でマウスをコントロール(ポインタを強制的に移動したりクリックさせたり)するにはどうすればいいんですか?
0468デフォルトの名無しさんNGNG
>>465
>メインの処理を止めてる間に、違う事したいんじゃないのかな ?

だったらメインからサブを呼べば済む話じゃないの?
>>452は何度読んでも、処理を中断したいだけとしか思えん。
っていうか、肝心の452のレスがないなあ。
0469465NGNG
>>468
> だったらメインからサブを呼べば済む話じゃないの?
ちょっと説明不足だっだね。メインの処理止めてる間に、ユーザーからの
入力を受けたりしたいんじゃないかな ? 例えば、初期設定終了後に、
10秒間テキストボックスへの入力を待って、入力された値で残りの処理を
するとか...。

まあ、いずれにせよ...
> 肝心の452のレスがないなあ。
ですねぇ...。
0470デフォルトの名無しさんNGNG
>>467
mouse_event
0471デフォルトさん ◆oZf4cgA6 NGNG
今までMouseUpイベントでListView上の右クリックを処理していたんですが
ListViewを複数選択可能にして、右クリックで範囲選択しても
mouse_upにはならないようなんですよ。
デスクトップ上で右クリックで範囲選択すると、マウスボタン離した時にメニューが出ますが
あれと同じような動作をListView上でやりたいのです。
どうやったらできるのでしょうか。

それと、範囲選択してやると、もともと選択されていた部分も選択されたままになります。
えと、例えば最初にindex=2のアイテムが選択されている状態で
範囲選択で4,5,6を選択してやっても、2のアイテムまで選択状態のままです。
これの対処法もあると嬉しいんですが・・・

よろしくおねがしいます。
0472デフォルトの名無しさんNGNG
>>464
横からすいません。
"VTable" というものをはじめて知りました。文脈から大体の意味は取れるのですが、
内容を知らないので調べてみたいんですが、ちょっとだけヒントを貰えないでしょうか。
0473デフォルトの名無しさんNGNG
>>472
http://www.google.co.jp/search?hl=ja&ie=Shift_JIS&q=VB+VTable&btnG=Google+%8C%9F%8D%F5&lr=lang_ja
0474464NGNG
>>472
ごめん。473が示してくれたのでわかると思うけど、
「仮想関数テーブル」の略称です。
これを略してV-Table、VTable、V-Tbl、vTbl
などと呼ぶことが多い。

すべてのCOMオブジェクトは仮想関数テーブルを持つ。
(C++の純粋仮想関数の概念がベースになっている)

VBで事前バインディングというと、通常は
「仮想関数テーブルバインディング」のこと、
つまり、カスタムインターフェイス経由での
呼び出しのことを指す。

(もう1つ「DISPIDバインディング」なるものも
あるけれど、こちらは内部実装としては
実行時バインディングの一種と呼ぶ方が相応しい)

とりあえずはこんなところで。わからなければまた。
0475デフォルトの名無しさんNGNG
>>474
そのC++互換のVTBLを受け取ることでCOMはC++ではクラスとして振る舞えるわけか。
0476 NGNG
ActiveXコントロールでFormをもったものは 作成できるのでしょうか?

メソッドで そのFormを開いたり、
そのForm上のボタンを押すことにより、イベントを発生させいんですが、
どのようにすればいいのでしょうか?
0477 NGNG
イベントを発生させたいんですが、

の 間違い
0478 NGNG
ある領域に コントロールをたくさん貼り付けて、スクロールバーで閲覧するようにしたいのですが、
どのコントロールに貼り付ければいいでしょうか?
教えてください。
0479デフォルトの名無しさんNGNG
>>478
スクロールバーまでついている便利なコントロールは無い。
Frameに貼り付けて、VScrollなどを使って自作が基本。
他にもコンテナになるコントロールなら、例えばPictureに貼り付けても良し。
0480 NGNG
>>479

スクロールの量と一緒に コントロールのtop等を変更するのでしょうか?
0481デフォルトの名無しさんNGNG
>>473
すばらしいポインタをどうも。
つか、申し訳ない...。

>>474
ありがとうございます。
大体イメージはつかめました。

>とりあえずはこんなところで。わからなければまた。
大分知ってることに近づいてきたようですし、キーワードも多いので、
しばらく自分で勉強してみます。

お二人ともありがとうございました。m(__)m
0482デフォルトの名無しさんNGNG
>>480
その通り。

…スクロールバーコントロールはコロコロマウスに反応しないんだよねぇ。泣ける。
0483デフォルトの名無しさんNGNG
4桁の16進数を作りたいのですが、

例:
F → "000F"
FF → "00FF"

A = &HFF
B = Format(Hex(A), "0000")

とやっても上手くいきません。

B = "00" & Hex(A) とやれば良いのでしょうが、
桁数が多くなると大変です。

いい方法ありませんか?
0484デフォルトの名無しさんNGNG
B=Right("0000" & Hex(A), 4) は?
0485デフォルトの名無しさんNGNG
>>484
できました。
知りませんでした。
助かりました。
ありがとうございました
0486 NGNG
参照設定に追加したdll等を削除したいのですが、どうすればいいんでしょうか?
0487デフォルトさん ◆oZf4cgA6 NGNG
>>471 、無視モードでつか?(汗
ホント必要としてるんでお願いしますぅ
土下座でもなんでもするから・・・Googleのバカー!(何
0488デフォルトの名無しさんNGNG
>>471
> それと、範囲選択してやると、もともと選択されていた部分も選択されたままになります。
> えと、例えば最初にindex=2のアイテムが選択されている状態で
> 範囲選択で4,5,6を選択してやっても、2のアイテムまで選択状態のままです。

言っている意味がはっきりわかりませんが、
勝手にSelectedItem.Select=Trueになるということでしたら、

コンポーネントをWindows Commons Control 6から5に変更するとか
とりあえずMouseDown , MouseMove をトラップしてみるとか。
0489デフォルトの名無しさんNGNG
>>483
484のをさらに進化させて、
keta = 4
B=Right(String(keta,"0") & Hex(A), keta)
と書ける。

>>483
参照設定はずせばいいんでないの?
そのdllのファイルも消したいということなら、

regsvr32 /u そのファイルのパス

で登録解除してからファイル消すよろし。
0490デフォルトの名無しさんNGNG
Inetコントロールを使って、2つのファイルをダウンロードしようとしてます。
1つめのファイルサイズが800バイト、
2つめのファイルサイズが500バイト、とすると、

2つ目のファイルをGet_Chunkした時、
1つ目のファイルの残骸(下300バイト)が2つの目のファイルの最後の方に入ってきてしまいます。

今は、GetChunkでバッファが空になるまで無条件に読み込んでいます。

Inetで”GET”したデータサイズを覚えておき、GetChunk する時にサイズ指定すれば
いい様に思いますが、GETしたサイズを知る方法ってありますか?

それとも、何か別のやりかたで、2つ目のファイルにゴミが入らないようにする方法があるのでしょうか?

どなたか、教えてくださいませ
0491デフォルトの名無しさんNGNG
OLEで、エクセルグラフを読み込んだのですが、
ソフト側で作った乱数をOLEに代入して、
グラフ化するにはどうしたらいいのでしょうか?
0492デフォルトの名無しさんNGNG
ESCキー押したらフォームを閉じるなどのショートカットキーを
付けたい場合、どこにフォーカスがあるか分からないので、
全コントロールのKeyPressとかにコード書かないといけないのでしょうか。
それとも、もっと簡単な、ショートカットキー用に何かやり方があるのでしょうか。
0493デフォルトの名無しさんNGNG
>>492
メニューエディタでショートカットキーを割り当てるか
タイマーで監視ですかねぇ
0494デフォルトの名無しさんNGNG
起動済みのプログラムでコマンドラインの因数取得(?)ってどうやるのでしょうか?
ソフト起動前ならForm_loadでcommandを取得すればよいのですが、
起動済みの場合どうすればいいのかわかりません。
0495デフォルトの名無しさんNGNG
>>492
FormのKeyPreviewをTrueにする。
そのうえで、Form_KeyDownトカで監視。
0496デフォルトの名無しさんNGNG
>>494
ひきすう
0497デフォルトの名無しさんNGNG
>>494
起動済みでもcommandを取得すれば入ってると思うが。
…っていうか、起動しなきゃ取得コードが動かない罠。
0498デフォルトの名無しさんNGNG
ああ、引数ですね。しょっちゅう間違えるんですよ。
>>497
ん〜。どこがトリガーになるんでしょう?
0499デフォルトの名無しさんNGNG
>>498
えーと、トリガーもクソも、特別な変数 command を参照すれば、
いつでもどこでもコマンドライン引数は手に入りますが。
なんか勘違いしてる?
0500デフォルトの名無しさんNGNG
いや、え〜と。
デスクトップにあるアイコンにファイルをドロップしますよね。
ソフトが起動してない状態でやると、ソフトが起動します。
で、Commandでドロップされたファイル名が分かります。
ソフトが既に起動されてる状態でドロップしても何も起きません。
どうやったらわかるんでしょうか、と。
0501デフォルトの名無しさんNGNG
>デスクトップにあるアイコンにファイルをドロップしますよね。
しません。
0502500NGNG
>>501
いや、普通にしますって。
0503デフォルトの名無しさんNGNG
>>500
ソフトが起動している状態で、デスクトップアイコンにD&Dするとどうなる?
当然、もう一つソフトが起動するよね?
とすると、後から起動した方を終了させて、commandの内容をすでに起動している
方に送ってやらなきゃいけない。

DDE通信を使う方法がメジャーなので、調べてみるヨロシ。
DDEじゃなくても、プロセス間通信ができるなら何でもいいけどね。
0504500NGNG
あっそうでした。新しく起動した方を終了させています。
DDEか。。難しそうですね
Form_LinkOpenだとかを使うのかな。
0505デフォルトの名無しさんNGNG
DirectXを使用してpng画像の表示方法を教えて欲しいです。
ツールが必要なら置いてある場所も教えて欲しいです。
0506501NGNG
>>502
いや、そこ笑う所。
0507デフォルトの名無しさんNGNG
ピクチャボックスに描画メソッドを使って書いた図形をセーブしたいのですが、
SavePicture Picture1.image "xxxx.bmp"では、図形がなくなってしまいます。
よい方法はないでしょうか?教えてください
0508デフォルトの名無しさんNGNG
>>507
Picture1.AutoRedraw=Trueになってる?
0509デフォルトの名無しさんNGNG
>>505
他に方法があるかもしれんが、なければlibpng使うとか。
for VBっつーDLLがあるみたい。

http://www.libpng.org/
0510デフォルトの名無しさんNGNG
>>505
http://www.akikuma.cx/Download.htm
ここのTransG32.dllってのを使うのもいいかもしれない。
ActiveXやDirectXじゃないからお気に召さないかもしれないがー。
0511デフォルトの名無しさんNGNG
>>508さん ありがと!
解決しました。忘れてました。
0512デフォルトの名無しさんNGNG
キリ番げと。
ずさー
0513 NGNG
RaiseEventを用いて、イベントを発生させてるんだけど、呼び出し側でイベントが発生しません。

ActiveX DLLの作成途中です。

呼び出し元は こんな感じです。
Public Event test(test1 As Long)

Friend Sub Click()
DoEvents
RaiseEvent test(1)
End Sub

呼び出し側です。
Private WithEvents objtest As testclass

Private Sub objtest_test(test1 As Long)
Label1.Caption = test1
End Sub

で ラベルに値がセットされません。
どうすればいいのでしょうか?
0514デフォルトの名無しさんNGNG
ビバのバージョン6はまだ売ってるの?
0515なきやNGNG
はじめまして、なきやと申します。

VBのディストリビューションウィザードのことでお聞きしたいのですが、
インストーラを作成し、それを使って他のマシンにPGをインストールし、
アプリケーションを使用中に、
エラー番号:-2147221164(80040154)
「クラスが登録されていません。」
のエラーが出てしまいます。
エラーの発生する場所は必ず、mdbファイルへの接続時です。

作成環境は
windows98SE/VB6 SP5/Access97/SQL6.5/ADO2.5
ADOでのSQLサーバ接続と、mdbファイルへの接続を行います。

実行環境は、
windowsNT4.0 SP5 のみをインストールした状態です。

いろいろ試してはみたのですが、一向にうまくいきません。
どなたか、解決法方をご存知の方いらっしゃいましたら、ご教授ただけないでしょうか?
よろしくお願いします。
0516デフォルトの名無しさんNGNG
>>514
IBMとかNECが買い上げて再販してくれりゃいいのに。
需要はかなりあると思うぞ。
0517デフォルトの名無しさんNGNG
>>515
>作成環境は
>windows98SE/VB6 SP5/Access97/SQL6.5/ADO2.5
>ADOでのSQLサーバ接続と、mdbファイルへの接続を行います。

>実行環境は、
>windowsNT4.0 SP5 のみをインストールした状態です。

答えでてるじゃん。
0518デフォルトの名無しさんNGNG
最近若い人の間で人気があると聞いたので、今日初めて
この2ちゃんと称する掲示板に来てみました。
一体何ですか?この下品で不健全な内容は。
他人の誹謗中傷ばかりで卑屈で歪んだ性格の人間ばかり。
何よりもひどいのはその不健全さ。
見るに耐えない絵文字や下品な言葉。
穢れのない清らかな子供達がこんな不道徳な掲示板をみて
悪質な犯罪者になったらあなたたちはどう責任をとるのですか?
いい加減にして下さい。
こんな掲示板1日も早く禁止処分にしてひろゆきを牢獄にいれる
べきです。わかりましたか。
0519 NGNG
>>518
VB初心者にたいする あてつけか?(w
しかも 初めてきたとかいって しっかり 下げてるし。
>他人の誹謗中傷ばかりで卑屈で歪んだ性格の人間ばかり。
おまえモナー
0520デフォルトの名無しさんNGNG
>>519
ネタにマジレスする必要なし。放置しとけよ。
0521デフォルトの名無しさんNGNG
最近若い人の間で人気があると聞いたので、今日初めて
この2ちゃんと称する掲示板に来てみました。
一体何ですか?この下品で不健全な内容は。
他人の誹謗中傷ばかりで卑屈で歪んだ性格の人間ばかり。
何よりもひどいのはその不健全さ。
見るに耐えない絵文字や下品な言葉。
穢れのない清らかな子供達がこんな不道徳な掲示板をみて
悪質な犯罪者になったらあなたたちはどう責任をとるのですか?
いい加減にして下さい。
こんな掲示板1日も早く禁止処分にしてひろゆきを牢獄にいれる
べきです。わかりましたか。
0522 NGNG
配列を使用したいと思うのですが、どれだけ領域を確保すればいいのかわかりません。
代わりに MSFlexGridを 使用してみようかと思うのですが、これは、何列まで可能なのか
わかりますでしょうか?
0523なきやNGNG
>>517さん
すみません、初心者なもので、分かりません。
よろしかったら、詳しく教えていただけるとありがたいのですが・・。
0524デフォルトの名無しさんNGNG
>>522
http://www.netlaputa.ne.jp/~stadt/vb/
0525デフォルトの名無しさんNGNG
テキストファイルの、ある行だけ削除したいという場合、どうすればよいですか?

今考えている方法は、
1 1行づつ読み込み新しいファイルに書き込む
2 削除したい行の時だけ書き込みをスキップする
3 最後まで書き込んだら、古いほうのファイルを削除
4 新しい方のファイルを、古いほうのファイル名へリネーム
という感じなのですが、もっといい方法があるような気がするのですが・・・
0526デフォルトの名無しさんNGNG
>>523
初心者だっていうのは免罪符にならないってだれかが言ってた
俺もそう思う
参照設定だべよ?
0527なきやNGNG
>>526
幾ら僕が初心者だからって参照設定くらいちゃんと
やってます。馬鹿にしないで下さい。
0528デフォルトの名無しさんNGNG


最近若い人の間で人気があると聞いたので、今日初めて
この2ちゃんと称する掲示板に来てみました。
一体何ですか?この下品で不健全な内容は。
他人の誹謗中傷ばかりで卑屈で歪んだ性格の人間ばかり。
何よりもひどいのはその不健全さ。
見るに耐えない絵文字や下品な言葉。
穢れのない清らかな子供達がこんな不道徳な掲示板をみて
悪質な犯罪者になったらあなたたちはどう責任をとるのですか?
いい加減にして下さい。
こんな掲示板1日も早く禁止処分にしてひろゆきを牢獄にいれる
べきです。わかりましたか。
0529デフォルトの名無しさんNGNG
>>527
>馬鹿にしないで下さい。

だったら自力でやれよ。
0530デフォルトの名無しさんNGNG
>>529
最近若い人の間で人気があると聞いたので、今日初めて
この2ちゃんと称する掲示板に来てみました。
一体何ですか?この下品で不健全な内容は。
他人の誹謗中傷ばかりで卑屈で歪んだ性格の人間ばかり。
何よりもひどいのはその不健全さ。
見るに耐えない絵文字や下品な言葉。
穢れのない清らかな子供達がこんな不道徳な掲示板をみて
悪質な犯罪者になったらあなたたちはどう責任をとるのですか?
いい加減にして下さい。
こんな掲示板1日も早く禁止処分にしてひろゆきを牢獄にいれる
べきです。わかりましたか。
0531デフォルトの名無しさんNGNG
>>513
なんか構成がわからんけど、
testclassのClickプロシージャが動作してるか
そこでDebug.Printしてみそ。

何かフォームなり、コントロールなりがクリックされたら、
testclassのClickが呼ばれるんだよね?
0532デフォルトの名無しさんNGNG
>>522
聞く前に試してみれば?
0533なきやNGNG
>>527
? 私のフリをして変な書き込みしないで下さい。

参照設定は大丈夫だと思いますが・・。
visual basic for applicaions
visual basic for runtime objects procedures
visual basec objects and procedures
OLE automation
microsoft activeX data objects 2.5 library
microsoft data report designer 6.0
microsoft data formatting object library 6.0
以上を参照しています。

先ほど試しに、ADOでなくDAOでmdbへ接続したところ、
つながりました。
ただ、MSDataShapeを使用するのに、DAOでは無理じゃないか?
ということを聞きまして、ADOにしてあります。
これは本当に無理なのでしょうか?

0534なきやNGNG
>>533
無理が通れは道理引っ込む
0535デフォルトの名無しさんNGNG
逆境ナインですか。
0536 NGNG
>>531
>testclassのClickプロシージャが動作してるか
ちゃんとここは 通過します。
RaiseEvent test(1)も通ります。

>何かフォームなり、コントロールなりがクリックされたら、
>testclassのClickが呼ばれるんだよね?

その通りです。
通常、そのようなコーディングは どのようにするのでしょうか?



0537デフォルトの名無しさんNGNG
何か変な荒れ方してるね。
0538?NGNG
>>522
配列使った方がいいでしょ。Redimを調べてみて。
>>525
それでいいと思う。
>>533
OLEDBプロバイダが入ってないからだと思う。
0539デフォルトの名無しさんNGNG
>>536
コントロールのあるActiveXはOCXと呼んでいただけるとわかりやすい。
(ユーザインタフェースのない奴がActiveX DLL)

むー。あなたがどんなコントロールを作りたいのかわからない???
呼び出し元の方では、testclassを宣言しただけで、Newしてないとか?

複合コントロールの場合、普通はユーザコントロールに
ラベルなりボタンなりをぺたぺた貼り付けて、
ユーザコントロールに直接コードを書いて終了です。
ユーザ定義のイベントを発生させる場合もあります。

複雑な処理がある場合は、適当にクラスモジュールを追加しますけど、
クラスモジュールからイベントを発生させることは少ないですね。
TextBoxDecoratorとかであれば別ですが。
0540デフォルトの名無しさんNGNG
ADOでMDBのデータの更新を行う際に下記の様にコーディングしました。
例えば更新かけたときにエラーが発生した場合どのような形で
エラーを取得すればいいんでしょうか?


lstrPath = App.Path & "\test.mdb"
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & lstrPath & ";"

' レコードセット作成
lstrSQL = "select * from student where name = ""ponta"""
rs.Open lstrSQL, cnn, adOpenForwardOnly, adLockPessimistic

' レコード更新
With rs
.Fields("age") = 20
.Update
End With

0541?NGNG
>>540
On Error 〜 は知ってる?
エラー内容はErr.Descriptionに入ってるよ。
ていうかこれレコードセットオープンできる?
0542 NGNG
>>539
FormをもったDLLを作成したいんです。
それで、そのFormにあるボタンをクリックした時に、あるイベントを発生させたいんです。

これで わかりますでしょうか?
0543 NGNG
>>539
どうやら そのDLLにあるForm側でイベントを発生させることが
できるみたいなんです。
0544540NGNG
>>542
あ?さんだ。レスありがとうございます。
on error ですね。調べてみます。
レコードセットのnewとかは割愛しちゃいました。
本来のソースには書いてます
0545デフォルトの名無しさんNGNG
>>540

Dim lstrPath As String
Dim lstrSQL As String
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset

lstrPath = App.Path & "\test.mdb"

With cnn
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & lstrPath & ";"
.Open
.CursorLocation = adUseClient
End With

lstrSQL = "select * from student where name = 'ponta'"

With rs
.Open lstrSQL, cnn, adOpenForwardOnly, adLockPessimistic
.Fields("age") = 20
.Update
End With
0546なきやNGNG
?さん、レスありがとうございます。
今から試してみます!
0547デフォルトの名無しさんNGNG
コード入力してるときにマウスホイールがきかないのは仕様ですか?
ストレスたまりまくります
0548 NGNG
それは しようがないといいます。
0549525NGNG
>538
あ、この方法でいいんですか。
まずはチャレンジしてみます。ありがとうございました。
0550デフォルトの名無しさんNGNG
>>547
過去すれに書いてるよ
0551デフォルトの名無しさんNGNG
>>542 ずいぶんと面倒くさい事を >513 は無視して俺流で書いてみた。
ボタン→フォーム→クラス→DLL作成元とイベントが伝わるからめんどい。
{prjDllTest}
[Class1]
Option Explicit
Private WithEvents m_oForm1 As Form1
Public Event FormButtonClicked(nButton As Long)
Private Sub Class_Initialize()
  Set m_oForm1 = New Form1
  Call m_oForm1.Show
End Sub
Private Sub m_oForm1_ButtonClicked(nButton As Long)
  RaiseEvent FormButtonClicked(nButton)
End Sub
[Form1]
Option Explicit
Public Event ButtonClicked(nButton As Long)
Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
  RaiseEvent ButtonClicked(CLng(Button))
End Sub
{prjDllTestTest}
[Form1]
Option Explicit
Private WithEvents m_oDllTest As prjDllTest.Class1
Private Sub Form_Load()
  Set m_oDllTest = New prjDllTest.Class1
End Sub
Private Sub m_oDllTest_FormButtonClicked(nButton As Long)
  Debug.Print "CLICKED!!!"
End Sub

0552なきやNGNG
>>538
OLE-DB simple provider type library
を入れてみましたが、結果は同じでした・・。
入れたものが間違いだったのでしょうか?
0553デフォルトの名無しさんNGNG
>>550
それはかなり昔にがいしゅつでした?
最近でてたならdat落ちしてるかも知れるけど探してみまふ
0554_NGNG
>>553
ちなみにオレはこれ

どこでもホイール
http://www2k.biglobe.ne.jp/~araken/qdoko.htm

マウスカーソル非対応なものでも、
Windows標準のコントロールを使っているアプリなら強制的にホイールスクロールさせる。
もちろんVBでも使えるので、ソースコードをホイールでスクロールさせれますYO!!
0555 NGNG
>>551

まず、
Private Sub m_oForm1_ButtonClicked(nButton As Long)
  RaiseEvent FormButtonClicked(nButton)
End Sub
ここのイベントが 発生しないんですけど・・・。
どこか設定が 悪いのかなぁ?

0556デフォルトの名無しさんNGNG
>>554
おお、ありがとうございます。これでストレスが溜まらなくてすみます。

みなさまスレ違いな話してしまい申し訳なかったす
0557 NGNG
RaiseEvent は 通っても そのイベントが 発生しないのは なぜなんだろう?
0558デフォルトの名無しさんNGNG
>551 うそー? 動作確認したコードなんだけどなあ。
設定とかではないと思いますが。
0559デフォルトの名無しさんNGNG
>551
RaiseEventの後ろにスペースを入れると雷マークのポップアップが出ることと、
イベントを受ける方はコードを書くところの上にある2つのリストボックスから
オブジェクトとイベントを選択できることを確認してください。
あと、Class1のInstancingプロパティは5-MultiUseです。
0560 NGNG
>>558
http://support.microsoft.com/default.aspx?scid=kb;ja;JP177996
この記事と関係があるのかなぁ。
回避方法が2つあるといいながら、述べてないし、サンプルは わけわからんし・・・。
0561bloomNGNG

http://www.leverage.jp/bloom/start3/
0562デフォルトの名無しさんNGNG
>>412
亀レスで申し訳ないです。
うまくいきました、ありがとうございます。
0563デフォルトの名無しさんNGNG
>560
IDEではイベントが発生しない? うちはSP5です。
じゃあ、Debug.PrintのとこをMsgBoxに変更してコンパイルしてみるしかないですね。
0564?NGNG
>>552
ConnectionStringのProviderに指定してるやつ。
Microsoft.Jet.OLEDB.〜 ←ここは何になってる?4.0なら3.5だか3.51(どっちか忘れた)に変えてみて。
あとディストリビューションウィザードで作ったパッケージの中のSupportフォルダ内に
MSJET〜.DLLだかMSJT〜.DLLだかって入ってる?入ってたら原因は違うとこにあると思う。
正直経験無いので全部予想です。確実な知識ある人いたらヘルプ!
0565?NGNG
>>549=525
基本はそれだと思うけど、ファイルIOの部分は
ファイル全体を一回で読み込んで改行でSplit
削除したい行のとこからUbound(arr)-1までarr(i)=arr(i+1)とやっていき
Redim Preserve arr(Ubound(arr)-1)して改行付きでJoinしたものを一回で書き込み
ってしたほうが速いかも。普段使わないからすっかり忘れてた。ゴメン。
0566デフォルトの名無しさんNGNG
>560
Call m_oForm1.Show(vbModal)でやると確かにダメみたいだけど、
指定しちゃってる?
0567デフォルトの名無しさんNGNG
>>552
515まで遡るけど、

>エラー番号:-2147221164(80040154)
>「クラスが登録されていません。」

単純に参照してるライブラリが、正しくインストーラーに組み込んでないだけじゃないの。
開発環境では動くけど、実行環境では動かないんでしょ。
見当違いだったらゴメンなさいね。

ちなみにインストーラーは、Visual Studio Installerが便利よ。
http://www.microsoft.com/japan/msdn/vstudio/downloads/vsi/default.asp
0568500NGNG
DDEについて調べてみたら、なんかもう時代遅れ(?)なインターフェイスのようですね。
.netではサポートされていない・・
簡単でおすすめな通信方法ってありますか?
なんかsend messageがどうのこうのありましたが。
0569デフォルトの名無しさんNGNG
FontNameを使ってフォントを指定したいのですが、フォント名を指定しなければならず、ファイル名だと動作してくれません。
フォント名を知りたいのですが、どうすればいいのでしょうか?
0570デフォルトの名無しさんNGNG
>>569
フォント名って
MS明朝とかの事?
0571デフォルトの名無しさんNGNG
EnumFontFamilies
0572デフォルトの名無しさんNGNG
>>570
はい、label1.fontname="MS 明朝"の場合は、ファイル名とフォント名が一致してるので
Label1.FontName=FN などで、ファイル名から拡張子を取った値で指定できるのですが
後から入れたフォントがファイル名とフォント名が一致してないもので…
0573500NGNG
screen.fonts(index)
とか?
0574500NGNG
ごめん、全然違うな。
0575デフォルトの名無しさんNGNG
>>571
ありがとうございました!
0576なきやの友達NGNG
567 さんの、おっしゃる通りです。
533 の参照設定の他に、
MSDataShapeを使用時のライブラリが欠落していますが、
それが何か、わかっていません。
0577_NGNG
Inetコントロールをつかってファイルをダウンロードしてみてるんですが
落としているファイルの全容量を調べることはできるのですか?
今何%落としたってのを調べるにはそれが必要だと思うのですが。
0578_NGNG
age
0579デフォルトの名無しさんNGNG
テキストを表示するのに必要なheightってどうやって取得すればよいのでしょう?
Form1.textheightでそれらしい感じですが、
フォントサイズが違う部分なので利用できません。
0580デフォルトの名無しさんNGNG
大事件!!DJクラブ板にて、

麻薬常習者がfusianasanに引っかかる!!

これは逮捕に発展するかも!

祭りの予感!!

DJクラブ板(xxxxバキバキな奴集まれxxxx)より

↓
http://music.2ch.net/test/read.cgi/dj/1031033092/
0581デフォルトの名無しさんNGNG
>>579
Form1.Font.Sizeの値を変更してから
From1.TextHeight("hoge")をやってみればいいんでないの?
0582579NGNG
>>581
あっ!なるほど。
Form自体に描画はしないからそれでOKですね。
ありがとうございました。
0583デフォルトの名無しさんNGNG
秀丸とかみたいに、改行コードのところで "↓" みたいな編集不可の記号の表示って
どうやるんでしょうか。
VBのtextboxじゃ無理なんでしょうか。
先生!教えてください。
0584デフォルトの名無しさんNGNG
>>583
A. 気にしないでください。アイフルのサイトやサービスについて
ご質問はございますか?
0585デフォルトの名無しさんNGNG
>>583
ちまたにあるテキストエディタはTextBoxもRichTextBoxも使わず、
自前で文字列を管理、文字列の描画を管理しています。
その一環として改行コード等も自前で描画しています。
0586デフォルトの名無しさんNGNG
>>583
そういうコントロールを買って来い!
0587583NGNG
ガーン!
0588デフォルトの名無しさんNGNG
>>577
ファイルサイズはヘッダで取得
0589デフォルトの名無しさんNGNG
>>583
TextBoxに直接描画しちゃえばできるよ。
そう難しい事じゃない。
0590583NGNG
>>589
直接描画!? 調べてみます!
0591デフォルトの名無しさんNGNG
>>589
オーナードローなんて出来るの?あれ。
0592デフォルトの名無しさんNGNG
TextBoxをGetDCして、改行の位置を探し、そこにLineToとかでやじるし書いてやれば実現できる。
別に↓を描画してもいいけど。
当然縦、横スクロールしたときの対処や、ウィンドウが重なったときの
再描画処理なんかもしないとだめ。
縦スクロール位置はSendMessageで取得、
横スクロール位置はGetScrollPosで取得できる。
再描画処理はサブクラス化してWM_PAINT時に再描画してやればいい。
0593デフォルトの名無しさんNGNG
>>592
VB厨の理解を遙かに超えた予感。

じゃなくても面倒だから出来るだけやりたくないな・・・。
0594デフォルトの名無しさんNGNG
> 再描画処理はサブクラス化してWM_PAINT時に再描画してやればいい。
なら元から再描画の処理だけでいい。
0595デフォルトの名無しさんNGNG
VB6で作成したexeファイルのバージョンについて質問です。
ファイルのプロパティーを開き、バージョン情報タブの
「ファイル バージョン」って、A.B.C.Dというふうに
4カラムからなっていますが、3カラム目はどうやったら変化するのでしょう?

コンパイラ上で[プロジェクト]−[xxx.exeのオプション]で
「実行可能ファイルの作成」タブにある[バージョン番号]部分は
・メジャー  → 1カラム目
・マイナ   → 2カラム目
・リビジョン → 4カラム目
という対応になっているようであり、3カラム目だけ変えられません。
0596デフォルトの名無しさんNGNG
FILETIME 構造体ってのがどう使えばいいかよく分かりません
64ビットなので、半分に分けているようなのですが。
なんか100ナノセコンドレベルで管理されてるみたいだけど。
低い位が最大だと約214秒のようなのですが。

どういう計算をすればよいのでしょうか?
0597デフォルトの名無しさんNGNG
>>596
通貨型に入れて計算するのが簡単。
でもDate型に変換するのじゃだめなの?

> どういう計算をすればよいのでしょうか?
たとえばどんな感じの日付計算をしたいんでしょう?
0598デフォルトの名無しさんNGNG
>>595
俺はVB使いじゃないので間違ってるかもしれないけど、
本当にオプション項目がないとすれば、
> ・リビジョン → 4カラム目
このリビジョンの上位何桁かが3カラム目に
入るんじゃないかな?
0599デフォルトの名無しさんNGNG
なるほど。通貨型は64ビットなのか。

1601/01/01から今までの経過時間を求めたいです。
単位は100ナノセコンド。
FTime.dwHighDateTimeに上位32ビット、
FTime.dwLowDateTime 下位32ビットを代入します


Dim cDate As Currency

cDate = DateDiff("s", "1601/01/01", Date) * 1000

FTime.dwHighDateTime = CLng(cDate / 214748.3647)
FTime.dwLowDateTime = CLng(cDate Mod 214748.3647)
こんな感じにしてみたけど、最後の行でオーバーフローになります。
0600デフォルトの名無しさんNGNG
>>599
通貨型にMod演算子は使えないと思う。

0601デフォルトの名無しさんNGNG
質問ですが、ここでさせて下さい。
ウイルスに感染したファイルからウイルスの部分
だけ取り除きたいのですが、方法あるでしょうか?
使いやすいソフトなどありましたらアドバイスお願い
します。
初心者ですが勉強したいのでさわりから・・
0602質問ですよ?NGNG
アクセスで、特定のテキストボックスにフォーカスされている状態から、
フォーカスを外すのって、どうやればいいですか?
0603デフォルトの名無しさんNGNG
>>601
ここのVBってウィルスバスターじゃないぞ。
はげしくスレ違い。

基本は感染予防。
駆除できる場合もあるが駆除できない場合もある。
それ以前に、消されたり、壊されたファイルなぞ元に戻す方法はない。
0604デフォルトの名無しさんNGNG
>>601
> 質問ですが、ここでさせて下さい。

注意書きぐらい読めよ。

> プログラム・ソフトの使い方は PC 初心者板やソフトウェア板へ。
> ネタ、板とは関係の無い話題はご遠慮ください。
0605597NGNG
>>599
> 1601/01/01から今までの経過時間を求めたいです。
これだけならFILETIMEを使う必要はないです。

Date型のゼロ は 1899/12/30 で、
1601/01/01から1899/12/30までの日数は 109205日
(秒数なら 9435312000秒)
(ナノ秒なら94353120000000000)

だから、仮に1601/01/01から今日までの経過日数を求めたいなら

  Const BASEDAYS_FROM_1601 = 109205
  MsgBox BASEDAYS_FROM_1601 + CLng(Date)

だけで求まる。(UTCでなくローカル時間で計算する場合)

それと、上で通貨型に入れると書いたのは、
MoveMemoryまたは LSetステートメントを使って
メモリ内容をそっくりそのままコピーする
という意味です。
0606デフォルトの名無しさんNGNG
>>602
SetFocus スレ違い。
0607601NGNG
すみません。
プログラムの仕組みを知りたく、バスター等が駆除する
プロセスを手動でやるとどうなるかをやってみたいのです。
>>603
>駆除できる場合もあるが駆除できない場合もある。
まず何をためされますか?
0608602NGNG
>>606
スレ違いなのに教えていただいて有り難う御座います。
SetFocusですか。
他のボックスにFocusをあわせるのでなくて、
完全にFocusを解放してしまうこともできますか?
とりあえず、スレ違いなので、続きの詳しい質問は、
Access総合相談所 Part4というスレでしてきますね。
ありがとうございました。
0609605NGNG
あ、ごめん。全然違った。

DateDiffで直接取れるよね。
だったら
DateDiff("s", "1601/01/01", Date) * 10000000
だけでいいし、
それを整数表示したいならFormat関数
またはDecimalに変換すればいい。
0610デフォルトの名無しさんNGNG
Winsockコントロールを使ってTCPで通信したいんですけど、
1対多数の通信をする方法教えてください。サーバ側では
Winsock一杯用意してPORTを一人一人割り当てていけばいいんでしょうか?
なんか使い方間違ってるのかなと思ってます。
0611デフォルトの名無しさんNGNG
>>610
Winsockコントロールを沢山用意するか、コントロール配列にする。
んで、1個だけ待ち受け状態にする。

winsock_ConnectionRequestが来たら、適当な空いているWinsock
に対し、Winsock.Accept requestID する。
んで、そのWinsockで以後は通信。
RestenしてたWinsockはそのまま次の接続を待ち続ける。

…ってな感じ。
0612デフォルトの名無しさんNGNG
ピクチャーボックスをスクロールさせたいんですけど、どうしたらいいでしょう?
画像はできたんですけど、文字列ができないのれす。

ピクチャーボックスに文字列を上から下に表示していって、表示しきれなくなったら
スクロールしたいです。テキストボックスみたいに・・・

ご教授ください。おねがいしますです
0613デフォルトの名無しさんNGNG
Formのプロパティの"Icon"でアイコンを指定してEXEを作ったら、
生成された.exeのアイコンが指定した通りに反映されたのですが、
起動してみるとウィンドウの上のバーのタイトル左のアイコンだけ反映されていないのです。
どうしてなのですか。タ、タスケテクダサイ。VB6デス。
0614デフォルトの名無しさんNGNG
>>612
意味わからん。

>画像はできたんですけど、文字列ができないのれす。

ピクチャボックス上に描かれている文字列は画像と同じ。

自分が何をやってどういう状態にあるかもきちんと説明できなけりゃ
あいまいすぎてレス不可能。

>テキストボックスみたいに・・・
じゃ、テキストボックス使っておけば。
0615デフォルトの名無しさんNGNG
>>607
>プログラムの仕組みを知りたく、バスター等が駆除する
>プロセスを手動でやるとどうなるかをやってみたいのです。

そんなもん企業秘密で社員、及び元社員以外誰も知るか。
それにウィルスの数だけ対応も違うだろう。

>>603
>駆除できる場合もあるが駆除できない場合もある。
まず何をためされますか?

ウィルス対策ソフトを試す。以上。

一言いっておく。他人に意見を求めるときには自分の意見をまず持て。
0616デフォルトの名無しさんNGNG
ありがとうございます。>>611
Winsock一杯使うんですね。
0617デフォルトの名無しさんNGNG
>>615
>駆除できる場合もあるが駆除できない場合もある。
>そんなもん企業秘密で社員、及び元社員以外誰も知るか。
つじつまが合わん。
知るかといってウイルス対策ソフトを使うという姿勢なら
これに限った話でなくともプログラムをやってる意味は無い
と考えるがいかがか。
0618デフォルトの名無しさんNGNG
タイピングソフトを作ってるのですが、例えばjaとzya、tyaとchaなど
を同じと判定する方法をどうしようか迷ってます。考えたのがtyaと打ったら
”ちゃ”になるので日本語で判別しようかと思ったのですが、keypressで
1語づつ読んでjaでzを押したら、jaがzyaにすぐ入れ替えて画面に表示したいのです。
何か良い方法教えてください。
0619デフォルトの名無しさんNGNG
>>618
Ifとフラグだけでどうにでもなると思うけど、それじゃ格好悪いからダメってこと?
0620デフォルトの名無しさんNGNG
その前にIME入力モードでやってるのかそうじゃないのかはっきりしてくれ>>618
0621デフォルトの名無しさんNGNG
>>617
ウイルスデータベースを構築できるならどうぞご自由に…。
漏れには無理だYo!

現実問題として、そのウイルスの感染方法が判明している場合だけ、
元ファイルの復元可能性がある。それには当然ウイルスの解析結果等の
データベースが必要。
さらに、もし感染方法が判明したとしても、元EXEを破壊せずに感染する
ケースは希だろうと思われるので、たいていの場合で復元は不可能。

普通にプログラムやってればここらへんまでは短時間で思い至るだろう。
だから、>>615氏も知るかと言ってるんだろうよ。
つーか、怒らないから正直に板を間違いましたと謝りなさいな。
0622デフォルトの名無しさんNGNG
>>618
IMEをOFFで使うなら、自前でローマ字→かな変換のIMEモドキを
作ってみたらどうか。
練習のつもりで作ってるなら、こっちの方が面白いかも。
0623デフォルトの名無しさんNGNG
>>618
ttp://www5b.biglobe.ne.jp/~yone-ken/VB/
ここのごみ箱に一例があるぞ。
0624デフォルトの名無しさんNGNG
>>621
怒らせるつもりなど全く無かったがそうなってしまったかな・・
感染で困ってるとか駆除出来ればそれでいいという趣旨では
なかったのでここを訪ねてみたが、関係なかったのなら悪かった。
申し訳無い。
ただ、私がもしプログラムで飯食ってる人間なら間違っても
>>615のような発言はしないがな、本業ではプライドあるからね。
もう逝く
0625596NGNG
うわ、ごめんなさい。
じつはその求めた経過時間を使いたいのです。
SetFileTimeWriteでタイプスタンプを書き換えたいので
0626デフォルトの名無しさんNGNG
>>625
それなら、SystemTimeToFileTime / FileTimeToSystemTime あたりのAPI使ってみたら?
年月日時分秒形式と64bit日付の変換関数。
0627609NGNG
>>625
初めからそう言いなよ。
> SetFileTimeWriteでタイプスタンプを書き換えたいので
SetFileTimeでしょ。

Declare Function SetFileTime Lib "kernel32" _
  (ByVal hFile As Long, lpCreationTime As Any, _
  lpLastAccessTime As Any, lpLastWriteTime As Any) As Long
Declare Function LocalFileTimeToFileTime Lib "kernel32" _
  (lpLocalFileTime As Any, lpFileTime As Any) As Long
' 他の宣言は省略

Sub サンプル()

  Dim hFile As Long
  Dim curTime As Currency ' FILETIME構造体と互換

  hFile = CreateFile(省略)
  If hFile <> INVALID_HANDLE_VALUE Then
    curTime = VBDateToFileTime("2000/01/01")
    SetFileTime hFile, ByVal 0&, ByVal 0&, curTime
    CloseHandle hFile
  End If

End Sub
0628627の続きNGNG
' 日付型をFILETIMEに変換して通貨型で返す
Private Function VBDateToFileTime(ByVal dt As Date) As Currency

  Dim curLocal As Currency, curUTC As Currency
  ' FILETIMEをローカル時間で取得
  curLocal = DateDiff("s", "1601/01/01", dt) * 1000
  ' ローカル時間をUTCに変換
  LocalFileTimeToFileTime curLocal, curUTC

  VBDateToFileTime = curUTC

End Function

FILETIMEへの変換はSystemTimeToFileTimeを使う方法もあるけど、
上のようにCurrencyで処理する方が簡単だと思う。
長くてごめんよ。
0629596NGNG
できましたっ!
完璧です。
FILETIME使ったときはSetFileTimeのByVal 0&のところ(作成日時とか)が指定できなかったのですが、
これだとできますね。なんでだろ。

っていうかどこでどうSetFileTimeWriteと間違えたんだろうか。
しかもちゃんと動いていたのですが。
0630609NGNG
> FILETIME使ったときはSetFileTimeのByVal 0&のところ(作成日時とか
> が指定できなかったのですが、これだとできますね。なんでだろ。

関数宣言の第2引数以降の型を As FILETIME で
宣言していた(型が一致しなかった)のでは?
上のコードでは As Any で宣言しています。

> っていうかどこでどうSetFileTimeWriteと間違えたんだろうか。
Alias "SetFileTimeWrite"
を使って別名を付けていただけではないかと。
0631609NGNG
あれれ、すぐ上の書き込みの
> Alias "SetFileTimeWrite"
は間違い。
SetFileTimeWrite Alias "SetFileTime"
が正解。
0632デフォルトの名無しさんNGNG
>>624
言い訳を一生懸命しているが、板違いではないとしてもスレ違いは明白。
> 本業ではプライドあるからね。
どんなすばらしい仕事をしているか知らないけど、間違えた時は素直に認めて
謝罪できない奴はダメ。
0633デフォルトの名無しさんNGNG
>>632
今ごろ・・( ´,_ゝ`)プッ
0634デフォルトの名無しさんNGNG
>>632
負け犬・・( ´,_ゝ`)プップッ
0635602NGNG
>>606
向こうのスレまできていただき、教えていただいて有難う御座いました。
透明ボタンを作る方法で、いちど試してみたいとおもいます。
0636ぺんたNGNG
VBでMMORPG作れますか?
0637デフォルトの名無しさんNGNG
>>636
道のりは険しいが、作れる。
ちゃんとした構想と技術があれば可能だよ。がんばってね。
0638デフォルトの名無しさんNGNG
>>636
UOやEQやROのようなものだけをMMORPGと思っているなら
作れないと思って差し支えないでしょう。

アイディア次第だよ。
0639デフォルトの名無しさんNGNG
>>638
(・ε。・)え〜?がんばれば出来るYO!
0640ぺんたNGNG
>>637
まぁ、WinSockぐらいなら出来るんですが、まだまだ無理っぽいっすね。

>>638
えと、じゃぁああいうのは何で作ってるんですか?
Cか何かでしょうか?クライアント側はどうにでもなると思うんだけど
向こうのサーバーで動いているのは何で作ってるんでしょう?

そういえばめちゃ初歩的ではありますけど
一応VBで作られたMMORPG発見。
http://www.alpha-net.ne.jp/users2/kousaku/eternalonline.html
0641618NGNG
IMEをON、OFF選択できるようにする予定です。
ソースが長々となるのは覚悟しなきゃいけないのかな(汗)
>>623
サンプルみて理解しようしてます。やりたかったことが出来てますね、ありがとうございます。
0642615NGNG
>>615
> ただ、私がもしプログラムで飯食ってる人間なら間違っても

617がフォローしてくれている通りだ。
少しでもプログラミングしている人間なら、
君の発言がどれだけあほな発言かすぐにわかるってこった。
プログラミングで飯食ってる人間なら間違っても
君みたいなあほな発言をここでしない。

それと、他人が労力を費やして作ってるソフトを
自分で努力もしないやつが解析して理解できるわけがないだろ。

0643615NGNG
>>642
>>615じゃなくて>>624だ。がーん。かっこわるすぎ。
0644デフォルトの名無しさんNGNG
>>642
まぁ、あるソフトと同じ動作をするモノを作ってみたいという行為自体は俺はいいと思うけどな。
しかし、ここで聞く時点で彼にはその資格はないと思った。
自分でどうすれば実現出来るかを考えて自分なりにアルゴリズムを試行錯誤して見る。
関係のありそうな書籍を読んで自分の技のレパートリーを増やしていく。
それがまねると言うことでありプログラミングという創造的な作業の基本であると思う。
0645デフォルトの名無しさんNGNG
ま、初心者スレですし。
0646デフォルトの名無しさんNGNG
>>642 >>644
な、なるほど!
つまりお二人の意見をまとめると、こういうことですね。
「書籍も買えない貧乏人は麦を食え」

うーん。なんとなくカッコいいからage。
0647デフォルトの名無しさんNGNG
>>646
違うぞ。
・金がないなら努力しろ。
本屋で立ち読みして必要な部分丸暗記してくるくらいの覇気が必要。
後、インターネットは使用可能なわけだ。情報には事欠かないだろう。
金がないんだから工夫で乗り切るしかない。
幸い、コンパイラも情報も無料のモノが多くなってきたことだし。
なお、「インターネットで人に聞く」は勉強のうちにも努力のうちにも入らん。

・努力する気ないなら金を出せ。
面倒なら初めから市販ソフトで我慢するかどっかのSEにでも頼んで作ってもらえと。
自分で作れないんだから仕方ない。人にその面倒なことをやってもらう対価を払うべし。

・どちらも出来ないなら死んでしまえ。
上記のことはPCのすべての分野に当てはまる。出来ないのならやめて違う仕事なり
趣味なりを探すのがあなた自身のため。落ち込むことはない。人には適正というモノが
あるんだから。
0648デフォルトの名無しさんNGNG
>>642
一人相撲しちゃった・・( ´,_ゝ`)プップッ
0649デフォルトの名無しさんNGNG
>>646
>「書籍も買えない貧乏人は麦を食え」

書籍うんぬんの前に自分で考えるだろ。
その考えることまずしてないって話だと思うが。

本を読むなら、
・図書館を探す。なければ取り寄せを頼むこともできる。
・本屋で立ち読みもできる。

書籍変えませんってやつは、どこからインターネットしてるんだよ。
電気代やネット代は誰がどうやって払ってるんだ。
書籍も買えないほど貧乏なら、まずはバイトでも何でもして金稼げ。
中学生や小学生でバイトができないなら、親と交渉しろ。
プログラミングしてんだったら、プログラミングのできる環境があるわけで、
そもそも貧乏ではないと思われ。
0650デフォルトの名無しさんNGNG
>>646
麦は健康にいいぞ。
0651デフォルトの名無しさんNGNG
>>650
マジカルてハァハァ
0652デフォルトの名無しさんNGNG
ってか、もうやめませんか。
初心者の私が質問しにくい空気がピンピンです
0653デフォルトの名無しさんNGNG
>>652
自分でやるべきことをやった上で、
それを明確にして質問すれば叩かれることもなかろう。
板違いな内容は別として。
0654デフォルトの名無しさんNGNG
VBのIDE画面のプログラムコードの色を、
ツール>オプション>エディタの設定タブ
で変更できますよね。
そのときに指定できる色が、あらかじめ決められた色しかありませんが、
RGB値なりなんなりで、自分で色を自由に指定する方法はないでしょうか?
それらを保存してるINIファイルらしきものも見当たりません。

どうかお教えください。
0655デフォルトの名無しさんNGNG
>>654
ブチギレても良いですか?
0656デフォルトの名無しさんNGNG
キーッ
0657キンキンに腹まで反り返ったNGNG
>>624のティムボあげ。
0658デフォルトの名無しさんNGNG
>>654

コメントは赤
キーワードを青

にするだけで十分だべが?
ナマ言うんじゃねェて。
0659デフォルトの名無しさんNGNG
次のようなWith文の中にエラー処理を入れたいのですが
そういうことは可能でしょうか?

With rs_TmpFile
.Fields("aaa").Value = str_Sample1
.Fields("bbb").Value = str_Sample2
.Update
End With
0660651NGNG
あ、ADO使ったコーディングです。
0661デフォルトの名無しさんNGNG
>>659
入れれば。
0662デフォルトの名無しさんNGNG
VB.net買ったんだけど、ナゲェ、ナゲェよインストールの時間
インストールしてる時間で
コーディングできちゃうよ
0663デフォルトの名無しさんNGNG
>>662
インストールしている時間に寝てなさい。
0664デフォルトの名無しさんNGNG
textboxのDataFormatプロパティに
formattypeとして日付(yyyy/mm/dd)を設定しました。
これってユーザが20010101とか入力して
ロストフォーカスした際に
勝手に"2001/01/01"に整形したり
してくれるわけじゃないの?
0665デフォルトの名無しさんNGNG
>>652
粘着厨房が荒らしてるだけなので、気にせずドゾ。
無視してマターリやればいいです。
とはいえ、>>601を読み返してみれば、荒れるのもわかるわな…。
0666デフォルトの名無しさんNGNG
>664
使ったことないんでわからないんだが、ヘルプを読む限りDBに保存している値を
表示させるときの書式、という意味合いだと思うよ。
しかもDBと連結してないと使えないみたいだ。
0667デフォルトの名無しさんNGNG
>>659
「可能でしょうか?」じゃねえだろ。
まずは自分で試してみて、出来なかったら聞いて来い。
0668デフォルトの名無しさんNGNG
このスレ恐ろしいな〜。俺が質問するには十年早いや。
0669デフォルトの名無しさんNGNG
質問文の形式と態度さえ間違ってなければ問題ないはず>>668
0670デフォルトの名無しさんNGNG
>>668
十年後にはVBがないから、質問するなら今だ。
0671デフォルトの名無しさんNGNG
ツールバーなら知っているのですがクールバーとはなんでしょうか?
0672デフォルトの名無しさんNGNG
↓の右側のほう
http://images.google.co.jp/images?hl=ja&ie=UTF-8&oe=UTF-8&q=%E3%82%AF%E3%83%BC%E3%83%AB%E3%83%90%E3%83%BC&sa=N&tab=wi&lr=lang_ja
0673671NGNG
そこに行ったところ
クール・バーニンという音楽アルバムだとわかりました。ありがとうございます。
0674デフォルトの名無しさんNGNG
>>668
同感
みんな冷たい
初心者向けの板に思えない
0675デフォルトの名無しさんNGNG
初心者向けの”板”じゃない。
0676デフォルトの名無しさんNGNG
>>671-673
(・∀・)イイ!
0677デフォルトの名無しさんNGNG
>>646
お歳がバレますわよ(W
0678デフォルトの名無しさんNGNG
自称プログラマー気取りのセンズリスレはここですか?
0679デフォルトの名無しさんNGNG
>>678
どうやらそのようです スレタイのアハァがすでに物語ってます
0680デフォルトの名無しさんNGNG
>>678
自称プログラマー気取りって日本語変だよね。
そんな事書いてて楽しい?
0681デフォルトの名無しさんNGNG
(*´д`*)アハァ…
0682デフォルトの名無しさんNGNG
株価をネットから取得するには、どうしたらいいんでしょうか?フリーソフトを使わないで
組み込んでみたいのですが・・・
0683デフォルトの名無しさんNGNG
煽られてる質問にちょっとやさしめのレスしてみます。
>>601
原理的にはさほど難しい事では無いよ。勉強してれば自然にわかってくる。
でもウイルスの数は膨大&増え続けているからキミ一人では一生かかっても終わらない。
だからこそいくつもの会社がそれをネタに食ってけるわけで・・・。
プログラムで飯食ってる人間なら間違っても一人でやろうとは思わない。
プライドあったらこんな事しようとしてるなんて恥ずかしくてとても言えない。

>>654
多分ムリ。ていうかよほど奇特な人以外は調べるどころかやろうとも思わないんじゃないかな。
まずそれをやる意義を皆に理解させる事から始めましょう。
意義があるなら調べてくれる人も出てくるかもしれない。

>>659
その質問は自分じゃ調べる気も試す気も全くありませんって言ってるのと同じだよ。
少しは自分で調べるなり試すなりしようよ。
0684デフォルトの名無しさんNGNG
VBSでWIN32APIを使いたいのですが
そういうことは可能でしょうか?
教えてください。
0685デフォルトの名無しさんNGNG
(*´д`*)アハァ…
(・∀・)イイ!
0686デフォルトの名無しさんNGNG
>>684 可能です。
0687684NGNG
>>686
ありがとうございます。
どのような命令を使えばいいか、教えていただけますでしょうか。
(自分で色々調べてみてもわからなかったので)
0688デフォルトの名無しさんNGNG
マウスポインタがpicturebox上にあるときだけlineを表示したいんですが、
picturebox.mousemoveでlineをvisibleにするのはいいとして、
ポインタが外に出た時にlineを消すのがうまくいきません。
form.mousemoveを使おうにもオブジェクトが敷き詰められてるのでうまくいかないし、
picturebox.lostfocusは別にfocusを得ているわけではないから使えないし。

どうすればよいでしょうか?
0689デフォルトの名無しさんNGNG
VBSでAPI使うのは邪道だろ。
0690デフォルトの名無しさんNGNG
>>689
別にいいじゃん
0691デフォルトの名無しさんNGNG
よろしくお願いします。
あるフォームのテキストボックスの内容を取ってきたいのですが、

form1に

ret = fncFormtxt(me)

と書いて、

public function fncFormtxt(frm as form) as string
dim ret as string

ret = fncBoxGet(frm)

end function

public function fncBoxGet(frm as form) as string
dim ret as string

ret = frm.text1.text

end function

と言う感じにしたいのですが、どうしたらよろしいでしょうか。
0692デフォルトの名無しさんNGNG
全くもって関係ない話ですえけど
色々プログラムなどしてる方に聞きたくて、IPやホスト名の話なのですが
この2チャンネル掲示板に書きこんだだけで、相手にIPなどバレてしまうのですか?
と言うか、調べる事は出来るのですか?例えば、今私が何のPCを使ってるかだとか
どこに住んでるかぐらいは、調べられるんでしょうか?
0693デフォルトの名無しさんNGNG
>>692
禿しくスレ違い。
0694692NGNG
わかり辛くてすみません。
例えばですよ、全く関係の無い>>691さんが私のIPなどを調べる事は出来るのか、と言う事です。
不可能ではない話なのでしょうか?
0695692NGNG
>>693
すみません、そう言う行為が可能か?不可か?だけでも教えて頂けないでしょうか?
0696デフォルトの名無しさんNGNG
IP抜かれてなんか困るようなことでもしたのかなー
0697デフォルトの名無しさんNGNG
すみません、質問させてください。
ActiveReports1.5を使用して帳票作成をしています。
出力データに依存しないラインを引きたいと思っています。
(Formオブジェクトでのlineメソッドのような感じです)

ヘルプファイルやネットで調べたのですが、該当するものが発見できませんでした。
どなたか知っている方がいらっしゃいましたら、ぜひご教授お願いします。
宜しくお願いします。

開発環境: VB6、ActiveReports1.5、Oracle8、OS:Windows2000
0698692NGNG
>>696
いえ、やってませんが、いろいろ不安なんですよ。
今、ウイルスバスターもファイアーウォールも何も入れてない状態なんで
ちなみに>>696さんは私のOSぐらいはわかってらっしゃるんでしょうか・・・。
0699デフォルトの名無しさんNGNG
>>694
691の頭では付加。
http://pc3.2ch.net/test/read.cgi/tech/1031809334/l50
0700デフォルトの名無しさんNGNG
むしろ板違いだろ。
0701692NGNG
すみませんです。
もう消えます>>699さん・・・その言い方がだと、かなり技術力がある奴が
やったら不可能ではないと言う事ですね・・。
0702デフォルトの名無しさんNGNG
VBにて、他のアプリケーションソフト(・・・.exe)を立ち上げるプログラム
のやり方を教えて下さいませ。例えば、ボタンを押すとEXCELやWORD
等が起動するカンジの内容なのですが・・・。
0703デフォルトの名無しさんNGNG
>>702
shell()関数
詳しくはMSDN
0704ibhについてNGNG
わたし素人でもうしわけないんですけど、ibhってついてるのは、何のソフトで見れるんでしょうか
0705デフォルトの名無しさんNGNG
>>704
なんでそれをVBスレで聞く?
0706デフォルトの名無しさんNGNG
>>704
激しくスレ違い
0707?NGNG
>>688
アクティブなコントロールのTop、LeftとマウスのX、Yから
マウスカーソルがpicturebox上にあるかどうかを算出する関数を作り
それを全コントロールのmousemoveから呼び出すってな感じかな。

>>691
form1に
ret = fncBoxGet(me)
と書いて、
public function fncBoxGet(frm as form) as string
fncBoxGet = frm.text1.text
end function

>>697
データ出力後にコードで移動すればいいのでは。
0708697NGNG
>>707
返答ありがとうございました。
申し訳ないんですが、「コードで移動」の意味がわからないです。すいません。。
質問の仕方が悪かったかもしれないです。

やりたい事は、出力されているデータの数などと関係なく、
四角や線を出力するレポートに対して縦横無尽に描きたい、
というものなのですが…。
大変申し訳ないですが、もう一度噛み砕いてご説明いただけないでしょうか。
宜しくお願いします。
0709デフォルトの名無しさんNGNG
>>707
頭文字は大文字にしてYO!
0710Delフサギコ ◆VzDeLphI NGNG
 ミ,,゚Д゚彡すつもんっす。
よろしくおねがいします。

グリニッジ時で
"2002-09-10T22:30:00Z"
こんな表現があるのですが
これを簡単に現地時間に
変換する方法はないでしょうか。

標準のライブラリにあればすごく楽なんです。
0711Delフサギコ ◆VzDeLphI NGNG
 ∧,,∧
ミ,,゚Д゚彡ちょと説明不足だったかも。

グリニジ時文字列を普通のニポン時間文字列に
変換したいってことです。

よろしくおねがいします。
0712684NGNG
漏れの質問もどなたか回答お願いします。
0713?NGNG
>>708
デザイナに図形コントロールを張り付けるとデータ量に応じて
自動的に移動してしまうがそれを固定にしたい。
という事だと思ったけど違うみたいだね。
自由にお絵かきしたいって事ならPrinterオブジェクト使うとか。
またはデザイナにイメージボックス貼り付けて、別に描いた絵をそこに読み込むとか。

>>709
>>691のコピペなもんで。

>>710-711
無いと思う。普通にコード書いても簡単だと思う・・・
0714697NGNG
すみません自力で解決しました。調査不足でした。
申し訳ないですーー。
0715697NGNG
>>713
すいません、ありがとうございます。レス見ずに714を投稿してしまいました。
Printerオブジェクトもどんな事ができるのか、見てみますです。

自分がやりたかった線や四角描きは、Canvasオブジェクトに
Drawline,DrawPictureなどのメソッドがちゃんとありました。
調査不足でご迷惑お掛けしました。
0716デフォルトの名無しさんNGNG
>>711
Win32APIの FileTimeToLocalFileTime あたりを使ってみるのは
どうかな?
VBだけでTZ考慮しならどうにかする方法は、自分でロジック組むしか
ないような気がするです。
0717?NGNG
>>715 わざわざどうも。見つかって良かったね。俺も覚えておこう
0718デフォルトの名無しさんNGNG
VBド素人の質問で申し訳ありませんがご指導おねがいします。

Option Explicit

Private Sub Command1_Click()
  Dim bytArray() As Byte
  Dim intFileNo  As Integer
  Dim lngFileLenB As Long
  lngFileLenB = FileLen("sample1.txt")
  ReDim bytArray(lngFileLenB - 1)
  intFileNo = FreeFile
  Open "sample1.txt" For Binary As #intFileNo
  Get #intFileNo, , bytArray
  Close #intFileNo
  Text1.Text = StrConv(bytArray, vbUnicode)
End Sub

このときの「sample1.txt]ファイルはどこにおいて置けばよいのでしょう?
試している時はデスクトップに置いていたのですが読み込めませんでした。
基本的にパスの通し方を理解できていないですかねぇ?
よろしくお願いします。
0719デフォルトの名無しさんNGNG
chdir()で指定したところとか
特に指定して無いならexeと同じフォルダ
0720デフォルトの名無しさんNGNG
>>719
カレントフォルダだろ
0721デフォルトの名無しさんNGNG
サムネイル表示させる(縮小画像がいくつも表示できる)プログラム
をVBで作成したいのですが、わかるかたはいらっちゃいませんか?
0722718NGNG
>719
実行してみたら成功しました!本当に有難う御座います。
これで3日間の胸のつかえがとれました。感謝!
0723デフォルトの名無しさんNGNG
>>721
「わかるかた」って何がわかる人を指すの?
0724デフォルトの名無しさんNGNG
>>721
いないでちゅ〜
0725デフォルトの名無しさんNGNG
>>721
ざっと考えたけど、遅そう。
0726デフォルトの名無しさんNGNG
>>725
そりゃエクスプローラの表示でも遅いしなぁ。でも、だからなに?
0727Delフサギコ ◆VzDeLphI NGNG
 ミ,,゚Д゚彡なんかのAPIでできるって聞いたことあるけど...
0728Delフサギコ ◆VzDeLphI NGNG
 ∧,,∧ かんたんですた。>>710
ミ,, ゚Д゚彡

Public Sub Check(ByVal A As String, ByVal B As String)
 If A <> B Then
  MsgBox "エラー" + vbCrLf + _
      A + "≠" + B
 End If
End Sub

'↓グリニッジ時を日本時間に修正する関数
Public Function GuriToJapTime(ByVal GuriTime As String) As String
 Dim Time As Date
 
 Mid$(GuriTime, 5, 1) = "/"
 Mid$(GuriTime, 8, 1) = "/"
 Mid$(GuriTime, 11, 1) = " "
 GuriTime = Left$(GuriTime, 19)
 
 Time = CDate(GuriTime)
 GuriTime = DateAdd("h", 9, GuriTime)
 GuriToJapTime = CStr(GuriTime)
End Function

Public Sub testGuriToJapTime()
 Call Check("2002/07/22 21:13:00", GuriToJapTime("2002-07-22T12:13:00Z "))
 Call Check("2002/07/22 21:13:00", GuriToJapTime("2002-07-22T12:13:00Z"))
End Sub
0729デフォルトの名無しさんNGNG
>>691
そんな細切れにして、どうすんの?
0730デフォルトの名無しさんNGNG
>>728
ちょっとまてい
0731Delフサギコ ◆VzDeLphI NGNG
 ミ,,゚Д゚ミまってみる。
0732デフォルトの名無しさんNGNG
>>684
もう見てないと思うけど、DynaCallをぐぐれ
0733デフォルトの名無しさんNGNG
>>731
いや、待たなくていいです…
Mid$(GuriTime, 5, 1) = "/"ができるのを知らなかった。逝ってきまつ
0734Delフサギコ ◆VzDeLphI NGNG
 ミ,,゚Д゚ミノ  いってらっつぁい
        俺も最近しりまつた。
0735デフォルトの名無しさんNGNG
>>734
文字列操作が速くなった。ありがたやありがたや。
0736デフォルトの名無しさんNGNG
ん?
Mid$(GuriTime, 5, 1) = "/"
って、置き換えってことだよね?
0737デフォルトの名無しさんNGNG
VB6.0からActiveReportsの2.0Jを通して帳票出力を行いたいのですが
ここのサイトにActiveReportsの詳しい使い方が出てるよ!みたいな
ところを知っている方いらっしゃれば教えていただけないでしょうか?
YahooとかGoogleとかソフト自体を紹介しているとこくらいしか
引っかからないんですよね・・・
0738デフォルトの名無しさんNGNG
>>737 ヘルプとサンプルを参照した方が早い
0739 NGNG
gif画像を拡大して一つのFormに いくつか 表示したいのですがどうしたらいいのでしょうか?
0740デフォルトの名無しさんNGNG
株価をネットから取得するには、どうしたらいいんでしょうか?フリーソフトを使わないで
組み込んでみたいのですが・・・
0741デフォルトの名無しさんNGNG
>>740
じゃあ市販のコントロール使う。
0742デフォルトの名無しさんNGNG
>>739
APIのStretchBltあたりを調べるヨロシ。
きれいに拡大縮小するにはちょっとコツがあるけどね。
0743?NGNG
>>739 Imageコントロール使えばいいのでは
0744688NGNG
>>707
うーむ、それしかないですか。
結局picturebox以外のすべてのmousemoveにvisible=falseを書き込む形になりそう。
ありがとうございました。
0745デフォルトの名無しさんNGNG
>>744(>>688)
APIのGetCursorPosとWindowFromPointでできるだろ
0746デフォルトの名無しさんNGNG
Dim Pos As POINTAPI
GetCursorPos Pos
Line1.Visible = (WindowFromPoint(Pos.X, Pos.Y) = Picture1.hwnd)
0747 NGNG
参照設定で追加したDLL(ActiveX)を exeと同じフォルダにするには どうしたらいいのでしょうか?

つまり、VBでDLLを使うとき、参照設定で指定してあげるが、これをexeが実行するときに
そのDLLの位置をexeと同じフォルダに変更したいのです。

どうしたらいいのか 教えてください。
0748デフォルトの名無しさんNGNG
はあ?意味わからん。
ファイルを移動するのか、それとも作業フォルダを移動するのか、
それ以前になんでそんなことをする必要があるのか。
0749 NGNG
DLLを参照するEXEを一緒に配布した場合、フォルダが違うとエラーが出るからです。

そういう必要は、あるんじゃないですか?
0750デフォルトの名無しさんNGNG
> DLLを参照するEXEを一緒に配布した場合、フォルダが違うとエラーが出るからです。
でません。
0751デフォルトの名無しさんNGNG
>>749
> 参照設定で追加したDLL(ActiveX)を
ということではなかったのか?
それならフォルダが違っても動く。

> DLLを参照するEXEを一緒に配布した場合、フォルダが違うとエラーが出るからです。
DLLの登録はどんな方法でやってるの?

> そういう必要は、あるんじゃないですか?
普通は必要ない。
0752デフォルトの名無しさんNGNG
ListBoxのプロパティのStyleを"1"に設定すると
チェックボックスが付くじゃないですか?
あれがチェックされているかどうかの判断ってどうすれば
良いんですか?
MSDNでListBoxのプロパティやメソッド一覧を
一通り見たんですけどそれらしいのがありません。
どなたかアドバイスお願いします
0753752NGNG
あ、Selectedって奴かな?ちょっと試してみます
0754デフォルトの名無しさんNGNG
Excelで貼ってある画像の元画像のPATHをコードから取得できないでしょうか。

Excelの質問スレで聞いたのですが、こちらの方がプロフェッショナルな気がして、
向こうは取り下げて来ますた。
よろしくおながいします。
0755デフォルトの名無しさんNGNG
向こうの方に失礼かと。
0756デフォルトの名無しさんNGNG
>>753
まず ListBoxを作成して
       ListBoxプロパティの"Style"項目を「1-チェックボックス」にします。
       あとは下記の処理でOKです。

       Private Sub Form_Load()
         'リストボックスに項目を追加
         List1.AddItem "Sample-1"
         List1.AddItem "Sample-2"
         List1.AddItem "Sample-3"
         
         その他の記述文
       End Sub

       Private Sub List1_ItemCheck(Item As Integer)
         If List1.Selected(Item) Then
           List1.List(Item)がチェックされたときの処理を記述
         Else
           List1.List(Item)のチェックがばずれたときの処理を記述
         End If
       End Sub

らしいです
漏れも参考にさせて貰ったです
0757デフォルトの名無しさんNGNG
>>755
それじゃあ、向こうが下だと言っているようなもんじゃないの?(w

>>756
その妙なインデントは何?(w
0758752NGNG
>>756
レスありがとうございます。
↓のような感じで上から順次チェックしていくような
ロジックにしました


List1.ListIndex = 0
For i = 0 To List1.ListCount - 1

If List1.Selected(i) Then
MsgBox "aaa"
Else
MsgBox "bbb"
End If
Next i
0759デフォルトの名無しさんNGNG
>>757
>漏れも参考にさせて貰ったです
って書いたじゃん(w

>>752
まぁ、頑張ってくれ
0760デフォルトの名無しさん NGNG
SQLサーバ6.5と
VB6.0で作ってるんですけど、
VBからSQLサーバに接続失敗したときに
ログインのダイアログが出てしまいます。
これを出したくないんですけど
どのようにしたらよいでしょうか?
0761デフォルトの名無しさんNGNG
接続に失敗しないようにする。
0762デフォルトの名無しさんNGNG
それしかないの?
0763  NGNG
>>750
実行すると
実行時エラー 430
クラスはオートメーションまたは予測したインターフェースをサポートしていません。
というエラーが出ます。
0764デフォルトの名無しさんNGNG
SQLサーバ6.5と
VB6.0で作ってるんですけど、
VBからSQLサーバに接続失敗したときに
ログインのダイアログが出てしまいます。
これを出したくないんですけど
どのようにしたらよいでしょうか?


という内容の紙芝居を作っています。
0765デフォルトの名無しさんNGNG
>>763
「フォルダが違う」なんて出て無いじゃん。
配布方法に問題ありと思われる。どういうふうに配布してるの?
0766  NGNG
>>765
あ、別のエラーも出ました。
オートメーションエラーってやつです。

配布する前に 違うフォルダ等で テストしてるだけなんですけどね。
これで OKじゃないと dllを 配布できません。

0767デフォルトの名無しさんNGNG
>>763
 横レスです 
 DLLの参照設定が外れてるのでは?
 参照設定で追加したDLLをコンパイルするときは、
 DLLだけをコンパイルしただけではダメで
 DLLを参照するEXEも、再び参照設定をしなおしてからコンパイルした方がイイと思われます
 
 
0768  NGNG
>>767
すみませんが、参照設定しなおすというのは、dllを参照するようにすればいいということでしょうか?

普通に作成するときは、vbpで参照設定されてましたから・・・
0769デフォルトの名無しさんNGNG
>>766
うざいなもー。DLLのファイルをコピーするだけじゃダメ。
REGSVR32 /s YOURDLL.DLL
とか実行してレジストリに登録しろ。
それかデストリビューションウィザードかWindowsInstallerでセットアップを作れ。
0770766NGNG
>>769
うざいとか言うんじゃねえよ糞野郎!!
俺はうざくねえよ糞野郎!!
0771769NGNG
>770
十分ウザいじゃねえか糞野郎
0772769NGNG
俺はお前がうざいよ。
0773   NGNG
>>769
ActiveXのDLLって レジストリに登録しないとダメなんでしょうか?
0774デフォルトの名無しさんNGNG
VB6.0でAccessのソフトを作っています。

フォームを開く時に、最大化表示しないように「ポップアップ」を"yes"にしました。
これで最大化にならずにほぼ中央に表示されるようになったのですが、少し上のほうに
出てきて、メッセージボックスの位置とかなり外れたところに出てきてしまいます。

メッセージボックスと同じくらい画面中央に表示させたいのですが、どなたか教えて
いただけないでしょうか。よろしくお願い致します。
0775769NGNG
釣られますた。>>771はかたり。
>>773
ActiveXとはそういうものなのです。
その代わりに物理的な場所にとらわれず参照でき、
バージョンの互換も保たれる。はずだった。
0776767NGNG
>>768
 vbpで参照設定のチェックボックスが外れているのではないかと思ったんです
 外れていればチェックを付け直して再コンパイルした方がいいと思います
 レジストリ登録しても、ダメな時はダメなので(この辺、なんでダメなのかは不明)
 地道にやっていくしかないと思います。

 参照設定ではなくて、コード上でDLLをCreateObjectすると、
 これらの問題が出なくなるような気がしますが
 但し、DLLのレジストリ登録はやっといてね!
 
0777769NGNG
>767 = >776
VBPは配布しないだろうから、関係ないと思うよ。

>747
  >748
>749
  >750
  >751
>763
  >765
  >766
  >767
>768
  >769
>773
  >775
  >776
0778767NGNG
>>777
 DLLを参照しているEXE側のソースの
 参照設定のチェックボックスが外れていたらおかしくなるでしょ?
 バージョンの互換は、ソースの設定中に、プロジェクト互換とか、バイナリ互換とか
 設定するウィンドウがあったような気がする 手元にVBがないのでハッキリしていないが
 
>>768さん DLLを再コンパイルした後に、
 そのDLLを参照しているEXEのソースの参照設定を確認してください 
 
0779デフォルトの名無しさんNGNG
あーあ。VBの罠の一つ。ActiveXにはまってるよ。
VBは馬鹿でも出来るぶんちょっとむずかしい(w)こと
しようとしてはまってる奴が多いんだよなぁ。
ヘルプを10回くらい読み直して少しは賢くなってから挑戦したら(w
0780デフォルトの名無しさんNGNG
VB初心者です。
VBで処理を5秒間とか停止させるコマンドはありますか。
教えてちゃんで申し訳ありませんが教えてください。
0781 NGNG
regsvr32 /u で 何度 登録したDLLを削除しても
VBの参照設定を見ると 消えてません。

どうしたら 消えるのでしょうか?
0782デフォルトの名無しさんNGNG
>>780
なんでわざわざ初心者だとか余計な一言言うかな・・・
そういうのが甘えだってたたかれる原因になるんだよ。
と、これだけだとなんなので、TimerとDo〜Loopでも
調べなさいと言っておく。一発でできるコマンドはVBにはない。
0783デフォルトの名無しさんNGNG
>>781
くすくす
0784デフォルトの名無しさんNGNG
>>783
なにがおかしんじゃこらぁ!
しねこらぁ!
0785デフォルトの名無しさんNGNG
もうほとんど手遅れ。くすくす。
0786784NGNG
>>785
ハアァァア〜〜〜 チィ〜ン〜コォ〜
ハアァァア〜〜〜 マァ〜ン〜コォ〜
チ〜ン〜コ〜 マ〜ン〜コ〜 チ〜ン〜コ〜 マ〜ン〜コ〜 チ〜ン〜コ〜 マ〜ン〜コ〜
チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ
チンコ(チンコ!)マンコ(マンコ!)チンコ(チンコ!)マンコ(マンコ!)
チンコ(マンコ!)チンコ(マンコ!)チンコ(マンコ!)チンコ(マンコ!)
チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ
爺っちゃんも 婆っちゃんも チンコマンコチンコマンコ
父っちゃんも 母っちゃんも チンコマンコチンコマンコ
坊っちゃんも 嬢っちゃんも チンコマンコチンコマンコ
みんな一緒に チンコマンコチンコマンコチンコマンコチンコマンコ
チンコマンコチンコマンコチンコマンコチンコマンコチンコマンコチンコマンコチンコマンコチンコマンコ
0787デフォルトの名無しさんNGNG
ActiveXプラグイン(IE)から
全文検索エンジンを利用して
検索結果をActiveXプラグインの
フォームに表示させたいのですが、
可能ですか?
0788デフォルトの名無しさんNGNG
ハァッ
0789デフォルトの名無しさんNGNG
コントロールパネルのODBCデータソースの
システムDSNのデータソースの構成に、
「サーバー」っていう欄があるじゃないですか。
VBからこのサーバーに設定されている値をGETするにはいったいどうすればいいんでしょうか?
0790 NGNG
(*´д`*)アハァ… VB初心者質問スレ
みんな 初心者です。
ヘルプもどこを読めば わかるか 教えてくんなまし〜〜
0791デフォルトの名無しさんNGNG
VB6.0をWinXP環境で使ってる人に質問です。
SP5を当てた時にmdac_type.exeを実行してますか?
WinXPには、mdac2.7が入ってると聞きますが、
これを実行しちゃえば、mdacが2.7→2.5へと
ダウングレードしてしまうと思うんですがいかがでしょう?
0792?NGNG
>>774
>VB6.0でAccessのソフトを作っています。
Access VBAのことですね。
中央に表示を指定しても少し上のほうに表示されるというのは
おそらくAccessの仕様ですので手動で設定してやるほか無いと思います。
でもAccessではScreen.Heightとか取得できないんじゃなかったかな。
というわけで詳細はAccessスレで聞いて下さい。
ちなみに最大化表示したくなければ最大化ボタンを無効にすればいいのでは。。。
0793774NGNG
>>792
そうですね、AccessVBAのことです。失礼致しました。
手動で設定ですか・・・。一応Accessスレの方でも聞いてみます。
最大化ボタンを非表示にする「ダイアログ」にしても、最大化表示されてしまいます。

アドバイス、ありがとうございました。
0794デフォルトの名無しさんNGNG
>>774
DoCmd.MoveSizeを使え
0795?NGNG
>>793
>最大化ボタンを非表示にする「ダイアログ」にしても、最大化表示されてしまいます。
デザイン時に最大化した状態で保存してるからじゃない?
0796?NGNG
>>793
手動で設定ではなくコードで設定です。
コードで設定のことを手動で設定と言ってしまう変な癖がついてます。。。ゴメン。
0797?NGNG
>>789
サーバーって欄無いんだけど・・・
値はレジストリから取得できるんじゃない?
0798789NGNG
>>797
ありがとうございます。
HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI\hoehoe
のServer にありました。
SQLGetPrivateProfileString でもとれるようです。
0799デフォルトの名無しさんNGNG
今組んでるプログラムがちょっとでっかいファイルを
読み込んでキャッシュとしています。
実メモリ256M 仮想メモリ2Gとっているんですが、
300M超えたところでメモリ不足で落ち。
さてなぜでしょう?
0800デフォルトの名無しさんNGNG
>>799
まずコード出せ。話はそれからだ。
0801デフォルトの名無しさんNGNG
>>800
こんな感じです。
Redimで落ちてるからメモリ不足なんだろうけど
構造体の配列ってやばいんですかね。

Do While Not EOF(intFile) ' ファイルの終端までループを繰り返します。

ReDim Preserve typKeyInfo.typRelInfo(lngRTrm + 1) '関連情報配列確保
Line Input #intFile, strData

'配列に入れる文字列処理

lngRTrm = lngRTrm + 1 '関連ターム数加算
Loop
0802デフォルトの名無しさんNGNG
>>801
そりゃそうだろ
0803デフォルトの名無しさんNGNG
>>801
ディスクの空きは何バイトある?
構造体の配列の上限の制限をヘルプで探したけど無かった。
(これは構造体の配列をもつ構造体だけど)
0804デフォルトの名無しさんNGNG
ActiveReports2.0でとりあえずデータベースとなるAccessから
データを表示することはできました。
しかし問題が1つ発生し、例えば項目が3つあり項目1を主Keyとして設定し
項目2と項目3があったとすると、まずAccessで登録したときには
項目1:3 項目2:あいうえお 項目3:かきくけこ
で2番目に登録したものが
項目1:1 項目2:さしすせそ 項目3:たちつてと
だとすると、Accessのテーブルでは昇順で設定されているので項目1の
数値が若い順番から登録されているのですが、これをActiveReportsで
表示すると、あくまで登録した順番で
  項目1 項目2    項目3
   3  あいうえお かきくけこ
   1  さしすせそ たちつてと

で表示されてしまいます・・・・。これを主Keyの数値の若い順番から
表示させるにはどうしたらいいのでしょうか?
Accessの方の設定をしなければならないのでしょうか?
0805804NGNG
すみません。使っているのはVB6.0のEnterPriseでSP5入れてます
ActiveReportsは2.0Jです
0806デフォルトの名無しさんNGNG
>>803
ディスクは27Gとまだまだコンモリあります。
自分もメモリの制限探してみたんですが、
それらしい記述ないんですよね。
仕様書通りだとこのソースなんですが、
キャッシュにしないで逐一ファイルから読む方が
良さそうかもしんないですね・・・
0807デフォルトの名無しさんNGNG
>>799
こんな質問の仕方でちゃんとしたレスがかえってくると思ってる
おまえの頭がメモリ不足。
0808デフォルトの名無しさんNGNG
>>801
ReDim Preserve は毎回メモリ確保してメモリコピーして、って
やってるので、大きなループ中で+1しながらやるとスタック不足で
落ちるよ。

lngRTrm = 0
ReDim typKeyInfo.typRelInfo(100) '適当な初期値にする
Do While Not EOF(intFile)
  lngRTrm = lngRTrm + 1
  If lngRTrm > UBound( typKeyInfo.typRelInfo ) Then
    ReDim Preserve typKeyInfo.typRelInfo(lngRTrm * 2 + 1)
  End If
  Line Input #intFile, strData
  typKeyInfo.typRelInfo(lngRTrm) = strData
Loop
ReDim Preserve typKeyInfo.typRelInfo(lngRTrm)

このようにして、なるべくメモリ再確保の回数を少なくすれば、
落ちなくなると思う。
配列サイズの大きさがある程度予測できるなら、初期値をそれに
近くしておくと効率的。
0809デフォルトの名無しさんNGNG
131 名前:nobodyさん 投稿日:2002/09/19(木) 05:08 ID:Ab8J7aLw
>質問者へ
あのよ、プログラムの質問なんだから無理に文章にしないで

・プログラム概略
プログラムの説明、使用目的など
・環境
OS、使用アプリ、関連アプリなど
・入力
データ入力の方法、データ形式など
・処理
プログラム内で行うデータ加工、計算、アルゴリズムなど
・出力
出力データ形式、出力先など
・問題点
不具合の説明
・自分なりの解決法(試したもの)
自分で試した方法
・ソース
問題となっているプログラムソース

このくらいの箇条書きに整理して質問しろよ。書いてるうちに問題が解決する
場合もあるだろ。
どうも、解り辛い書き込みが多いよ。
0810799,801NGNG
>>807
スマソ。逝ってきます。

>>808
ありがとうございます。
やってみるっす。
0811807NGNG
>>810
逝くんじゃあねェ。
逝く時は漏れと一緒だ
0812807NGNG
>>811
へんな文章でスレかたるなよw
おれはその趣味ないから。
0813デフォルトの名無しさんNGNG
VBでWWWWサーバーに対してファイルのアップロード
が出来るクライアントを作ろうと思ってます。
つまり、ブラウザのGETやPUTメソッドをVBで実現させたいのです。

ブラウザだったら簡単ですが、VBの場合とうなんでしょうか?
標準でHTTPのプロトコルと通信を実装して
いるコントロールってありますか?
0814799NGNG
>>807

「おまえの頭がメモリ不足。」

に妙に納得。
増設キボンヌ。
0815デフォルトの名無しさんNGNG
>>808
メモリ確保の回数を減らすのはいいことだけど、
それ以外は全然間違ってるよ。
あんまり適当な事書くな。
0816デフォルトの名無しさんNGNG
>>813
> ブラウザだったら簡単ですが、VBの場合とうなんでしょうか?
おまえバカ?アプリと開発環境一緒にしてどーすんのと小一時間。
実現したいのなら、ちょっとは自分で探すなりしろ。
ここは子守りスレじゃないぞ。
0817デフォルトの名無しさんNGNG
>>799
300MBという数値は何を元に判断した?
0818804NGNG
解決しました。最初はADOでデータベースに接続していて、それを今度は
DAOで接続するとうまくいきました。
でもなぜなのか理屈がわからない・・・
0819デフォルトの名無しさんNGNG
webbrowserコントロールを使って現在表示しているページの内容を取得するにはどうしたらいいのでしょうか?

>>813
webbrowserコントロールの navigate でGET,POST出来るけど
それでファイル送信できるんすか?
0820デフォルトの名無しさんNGNG
>>818
809じゃないけどさ、もう少し質問するとき具体的なこと書いたほうがいいよ。
自分のレス(>>804)読んでて人が理解・分析できると思う?
プロパティ設定してるのか、クエリを作成してるのか
それともSQL文を書いてるのか、さっぱりでしょ。
818でも、そうだよね。
独り言ならいいけど質問ならもう少し相手のこと考えてね。
0821804NGNG
>>820
申し訳ない・・・。次からは気をつけます
0822デフォルトの名無しさんNGNG
あはーん、>>781答えてもらえてない。
かわいそうに。ここは馬鹿ばっかりだからなぁ。
くすくす。
0823デフォルトの名無しさんNGNG
>>822=781
必死だな。
0824デフォルトの名無しさんNGNG
盛り上がってるねえ
0825デフォルトの名無しさんNGNG
誰か>>791の質問に答えてください。
おながいします。
0826デフォルトの名無しさんNGNG
>>822
なにがおかしんじゃこらぁ!
しねこらぁ!
0827デフォルトの名無しさんNGNG
別板にて質問させていただいたのですが解決しなかったので、申
し訳ありませんがこのスレにて再度聞かせていただきます。

Excelのアプリケーションウィンドウの左上に表示されているア
イコンを自作のものに変更することは可能だと思うのですが、ど
のようなコードを書けばよいのでしょうか?
タイトルを変更するのはCaptionの変更でできたのですが、いろ
いろ調べてみましたがわかりませんでした。

どなたかご存知の方がいましたら教えていただけないでしょうか?

0828デフォルトの名無しさんNGNG
>いろいろ調べてみましたが
何を調べたの
0829827NGNG
>>827
ググって見たり、VBA関連のサイトで過去ログを見たりです。
0830デフォルトの名無しさんNGNG
Vinus Basic
0831デフォルトの名無しさんNGNG
>>827
そういうアイコンはリソースなのが普通。
API関連で検索してみ。
0832デフォルトの名無しさんNGNG
>>825 mdac_type.exeを実行してみなよ。そうすればわかる。
0833デフォルトの名無しさんNGNG
>>832
どうなるのよ
怖くて出来ません
0834デフォルトの名無しさんNGNG
>>833「セットアップはシステムをアップデートできません」とメッセージが出て終わり。
0835デフォルトの名無しさんNGNG
>>822
手遅れって回答ついてるけど。
プロジェクト互換にせずに拡張しつづけたんやろうねぇ。
0836デフォルトの名無しさんNGNG
>>822
ちょっと哀れな気がしたので俺も答えてやるよ。

Regsvr32 でどういう結果が表示されるのかくらい書け。
単に「消えてません」でわかる奴がいるか、ボケ。
これだから一部のVB厨は...
0837デフォルトの名無しさんNGNG
>>781
Regsvr32はレジストリの情報をいじる。
VBの参照設定はVBPに書き込まれる。
VBでコンパイルするとコンパイルしたマシンのレジストリは自動的に更新される。
0838デフォルトの名無しさんNGNG
質問があるんですが、、、
コンボボックスで、項目ごとに文字色を変えるってことは可能ですか?
方法があったら、教えて欲しいです。
0839デフォルトの名無しさんNGNG
>>837
> VBでコンパイルするとコンパイルしたマシンのレジストリは自動的に更新される。

そうとは限らん。
>>781は 自分で作ったVB製のDLLとはどこにも書いてない。
0840839NGNG
↑ それが原因とは限らん という意味でしゅ。
0841デフォルトの名無しさんNGNG
エクセルのシートに張り付けたコントロールに
vbからデータを渡すのはどう書けばいいの?
0842688NGNG
>>745
なるほど、APIですか。今まで考慮してませんでした。
試してみます。
0843デフォルトの名無しさんNGNG
>>834
ありがとう
実行してもしなくてもなくてもよかたんですね。
俺は実行してなくて不安だたけど安心しました。
0844827NGNG
>>831
ありがとうございました!キーワードを替えて検索しましたら見事に目
的のサンプルにたどり着けました。

煮詰まってたもんで、VBAVBAVBAアイコンアイコンばかり検索しちゃっ
てました。

はじめてAPIを使いましたが勉強になりました。
コードをいきなり教えてもらうよりヒントで答えていただいたおかげで
とても勉強になりました。

本当にありがとうございました。
0845デフォルトの名無しさんNGNG
>>841
書き込み先にExcelシートにあるコントロール名を指定してやれば
出来るんじゃないの?
0846デフォルトの名無しさんNGNG
アプリケーションアイコンを設定するにはフォームにアイコンを設定して
プロジェクトのプロパティでそのフォームを選択、としてるのですが、
フォームを持たないアプリケーションにアイコンを設定するにはどうするのでしょうか?
0847781NGNG
>>836
>>837

regsvr32 /u D:\test.dll
をやると
「D:\test.dll の DllUnregisterServer は成功しました。」 
と 表示されます。
次に VB6を起動します。
新規のEXEの作成を選んで、立ち上げてから、参照設定を確認してるんですが、
そのDLLが 残ったままになってます。

OSは XPで VB6のSP5をあててます。

レジストリを調査してみると 何箇所かそのDLLが表示されたのですが
何箇所かあるので 直接は 削除しませんでした。

どちらを変更するのが 確実なんでしょうか?
教えてください。
0848デフォルトの名無しさんNGNG
>>847
> DLLが 残ったままになってます。
これは参照設定でチェックが入った状態になってるということ?
それとも名前が出るだけ?
そのDLLはどんなDLL?自作?

要するに REGSVR32の実行直後ならレジストリ情報が
消されているのか否かを調べてみた方がいいと思うわけだけど。
0849デフォルトの名無しさんNGNG

下記のようなCase文の書き方できるのってCだけでしたっけ?
"11","12","13"は無処理って事になっちゃうんですね


Select Case AAA
case "10"
msgbox "10"
Case "11"
Case "12"
Case "13"
msgbox "10以外"
End Select
0850デフォルトの名無しさんNGNG
道繁に包まれて走り出した行くべき道を
情熱のベクトルが僕の胸を貫いてゆく
どんな危険に傷付く事があっても
0851デフォルトの名無しさんNGNG
>>849
自分で試せボケ
0852849NGNG
>>851
試したよ。
なっちゃうんですねって言ってるべや
0853デフォルトの名無しさんNGNG
Cと同じようにしたいなら
 Case "11","12","13"
と書く。

つーかヘルプくらい読めボケ。
0854デフォルトの名無しさんNGNG
>>852
そんなもん常識だっつーの
0855デフォルトの名無しさんNGNG
>>849
Select Case AAA
case "10"
  msgbox "10"
Case "11", "12", "13"
  msgbox "11か12か13以外"
Case Else
  msgbox "それ以外"
End Select
0856855NGNG
まちがえた。。。
0857849NGNG
みんないい奴だな。
ありがとう
0858デフォルトの名無しさんNGNG
>>855
>Case "11", "12", "13"
>  msgbox "11か12か13以外"

これって
   msgbox "11か12か13"
じゃないの?
0859デフォルトの名無しさんNGNG
>>858
ちゃんと自分で間違えたって書いてるじゃん。
気づけよボケ。
0860デフォルトの名無しさんNGNG
もうボケボケ言い合うのはやめにしよう
不毛だ・・
0861849NGNG
みんないい奴だな。
ありがとう
俺の為を思って叩いてくれる、最高のダチだ
0862デフォルトの名無しさんNGNG
いやダチじゃないし。
0863デフォルトの名無しさんNGNG
おいおい こんなことでもう10レス以上
消費しちゃってるよ
資源の無駄遣いってこういうことを言うんだな
0864デフォルトの名無しさんNGNG
>>863
ハアァァア〜〜〜 チィ〜ン〜コォ〜
ハアァァア〜〜〜 マァ〜ン〜コォ〜
チ〜ン〜コ〜 マ〜ン〜コ〜 チ〜ン〜コ〜 マ〜ン〜コ〜 チ〜ン〜コ〜 マ〜ン〜コ〜
チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ
チンコ(チンコ!)マンコ(マンコ!)チンコ(チンコ!)マンコ(マンコ!)
チンコ(マンコ!)チンコ(マンコ!)チンコ(マンコ!)チンコ(マンコ!)
チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ チンコ マンコ
爺っちゃんも 婆っちゃんも チンコマンコチンコマンコ
父っちゃんも 母っちゃんも チンコマンコチンコマンコ
坊っちゃんも 嬢っちゃんも チンコマンコチンコマンコ
みんな一緒に チンコマンコチンコマンコチンコマンコチンコマンコ
チンコマンコチンコマンコチンコマンコチンコマンコチンコマンコチンコマンコチンコマンコチンコマンコ
0865デフォルトの名無しさんNGNG
>>849
Cでは文字列をswitch文の対象にする事はできません。
0866 NGNG
>>859
何が間違えてるか わからんだろ。
訂正いれないと。
0867デフォルトの名無しさんNGNG
>>866
まだ引っ張るのかYO!(w
0868デフォルトの名無しさんNGNG
>>866
他にどこに間違いがあるか言ってみろ。
あれを見ても間違い箇所がわからんのは
お前1人なんだよ、ボケナス。
0869デフォルトの名無しさんNGNG
メッセージボックスのアイコンを任意のものに変更する方法を教えてください
ただしフォームモジュールを使って作成する以外でお願いします
0870デフォルトの名無しさんNGNG
>>869
MessageBoxIndirectが一番簡単。
またはTimerを併用して通常のメッセージボックスの
アイコンを差し替えてもいいな。

他にもダイアログボックスの自作があるが、
これはフォームの自作とあまり変わらんわな、このボケナス。
0871866NGNG
>>868
俺たちは同じVBスレの仲間だろう?
ボケだのボケナスだのいがみあってどうするよ?
仲良く行こうぜ?
0872デフォルトの名無しさんNGNG
VB使えるけどVB嫌いだよん。
VB厨よりVB使えるけどVB嫌いだよん。
このスレの奴はみんなアホだよん。

氏ねボケナス。
0873デフォルトの名無しさんNGNG
>>872
生理でイライラしてるのかい?
友達いなくてイライラしているのかい?
ライダー同士の戦いは止めるべきだ
0874デフォルトの名無しさんNGNG
はははん。
自分が使えないものを叩くのは難しいから使えるものを叩くんだよん。
言い返せないとこばかりつけるから楽しいよん。
0875868NGNG
>>872
VB使えるなんて当たり前のことをいちいち書きこみに来るな。
見ている方が恥ずかしいぞ、このVBコンプレックス野郎。
0876868NGNG
>>871
叱咤激励のつもりなんだが、気に障るのか?
もしそうなら控えるようにするが?
0877デフォルトの名無しさんNGNG
VBが悪いんじゃない!全てはVB厨が悪いんだ!
というわけで来週一週間をVB厨撲滅強化週間に指定します。
0878デフォルトの名無しさんNGNG
>>875
恥ずかしくて顔真っ赤ですか(w
0879デフォルトの名無しさんNGNG
>>872
> VB使えるけどVB嫌いだよん。
VBでも挫折?

( ´,_ゝ`) プッ
0880デフォルトの名無しさんNGNG
STOP THE AIDS!
0881デフォルトの名無しさんNGNG
VB厨よりVB使えるくらいで自慢カキコ?

( ´,_ゝ`) プッ
0882デフォルトの名無しさんNGNG
>>879
顔引きつってますよん。
0883デフォルトの名無しさんNGNG
>>881
くやしいの? ふふ
0884デフォルトの名無しさんNGNG
おっまえら だっせー(w
0885デフォルトの名無しさんNGNG
>all
ライダー同士の戦いは止めるべきだ
0886デフォルトの名無しさんNGNG
ここはひどいインターネトだすね
0887デフォルトの名無しさんNGNG
ライダーって、三輪車のか(w
キコキコキコキコ。
かっこいいでちゅね〜。
0888デフォルトの名無しさんNGNG
ぐわーっ!
0889868NGNG
おいおい、荒らしてるクズ共は職場で何かイヤなことでも
あったのか?
別に俺の知ったこっちゃないが、程度が低いことに気付けよ
このボケナス。
0890デフォルトの名無しさんNGNG
ったく荒らすんじゃねぇよなぁ。
お前らが大好きなVBが使えないからって。
好きなんだったらもっとわかってやれって。
少しの良い所も沢山の悪い所も。
俺は嫌いだがな。(w
0891デフォルトの名無しさんNGNG
質問、雑談、ちょっとしたTipsなどドゾー
罵り合いはご勘弁を :-)
0892デフォルトの名無しさんNGNG
うわぁ、こんなに釣れたよ。こいつら面白すぎ
0893デフォルトの名無しさんNGNG
ほーんと、面白いよねぇ。
釣れる釣れる。大漁じゃぁ〜!
0894デフォルトの名無しさんNGNG
>>872
こいつよっぽどVBでつらい目にあったんだろうな。

と さらに煽り立てて反応を見る。
0895デフォルトの名無しさんNGNG
>>894
えっ、お前VBでつらい目にあったことないの?
あんまり使ってない証拠だなぁ。精進しろよ。
0896デフォルトの名無しさんNGNG
正直ジサクジエンうざすぎ
0897デフォルトの名無しさんNGNG
使えば使うほど嫌いになっていく言語。VB。
未だに好きで使っている奴は、初心者素人くんでしょ。
0898デフォルトの名無しさんNGNG
プッ
つらい目に合うくらい使っちゃったの?
それはつらいだろうけど頑張れ。VB使い君。

とさらに煽って様子をみる。
0899デフォルトの名無しさんNGNG
そろそろID導入して欲しいなぁ…。正直飽きた。
0900デフォルトの名無しさんNGNG
VB6を使用しています。
PCからRS232C経由で外部の機器へキャラクタコードを送信したいのですが、
特定のコードで送信データが NULL となってしまい、思ったように送信できません。
例えば
Mscomm1.Output=chr(244)
が送信できません。

244のほかに、129〜159 と 224〜252 で NULL になってしますようですが、
回避はできるのでしょうか?
0901898 は >>895NGNG
あれ、おかしいな。
すごい速さで反応するところが一番笑えたのに。。。トイレかな。
じゃ俺もそろそろ飽きるとするか。
0902 NGNG
おいおい 
アホだから 恥さらして きいんてんだろ。
アホじゃなかったら、聞く前に ちゃんとコーディングしてるって。
0903デフォルトの名無しさんNGNG
>>900
その数字が何を意味するかは気付いてんのか?
というかバイト型配列でも使っとけ、ボケナス。

>>902
誰向けのレスなんだろう?
0904デフォルトの名無しさんNGNG
押忍!下のSQL文なんか変っすか?
ADOのレコードセットのOpenで「演算子がありません」
と出てしまうんですけど。
HIZUKEは日付型です。


"SELECT * FROM TBLNM WHERE HIZUKE > = '2000/02/02'"
0905デフォルトの名無しさんNGNG
> と = の間を詰めろよ、ボケナス。
0906904NGNG
>>904
あ、詰めても同じだったよ
ボケナスとはご挨拶だな糞野郎。
0907905NGNG
ついでにもう一丁。
日付型なら #で括れ。
0908904NGNG
>>907
ありがと!!やってみる!!
0909デフォルトの名無しさんNGNG
> あ、詰めても同じだったよ
エラーメッセージも同じのわけないだろ、ボケナス。
0910デフォルトの名無しさんNGNG
>>908
ちょっと笑ったじゃないかYO。
0911 NGNG
VBで作成したActiveXのDLLを修正して 上書きしたら、
それを呼んでいるVBのプログラムが エラーが出ました。

DLLの置き換えは できないんでしょうか?
0912デフォルトの名無しさんNGNG
VBだしな。出来なくてもおかしくないだろう。
0913デフォルトの名無しさんNGNG
>>904
「=>」 に入れ替えてみ
0914デフォルトの名無しさんNGNG
>>911
日本語勉強してからまた来い
0915デフォルトの名無しさんNGNG
>>911
COMのインターフェイス不変の原則って知ってるか?

ちなみにエラーを起こすプログラムはコンパイル後の
EXEなのか?
もしそうでないなら参照設定を一旦解除してみろ。
それで直らなければDLLの登録を解除してから再登録も
やってみろ、ボケナス。
0916 NGNG
「VB2.0→VB6.0変換」
VB2.0のFormソースコードはバイナリで保存されているらしくVB6.0などでは読み込めません。
どうしたらよいでしょうか?
VB2.0ももってないし、VB4.0では2.0のフォームを読み込むことができるのですが、
VB4.0をインストールするとパソコン内のdllが古いバージョンのdllになってしまうし・・・。
持っているVB入門の本の付録フロッピーに収録されているサンプルがVB2.0のものなのでなんとかしてそのフロッピーのサンプルを読み込みたいです。
0917911NGNG
>>915
ぼくはボケナスじゃないですよ・・・
0918869NGNG
>>870
ありがとうございます。
MessageBoxIndirectで出来るようなのですが、アイコンの指定の方法がよくわかりません。
MAKEINTRESOURCEマクロというのを使うようなのですが。。。
なお表示させたいアイコンはアプリケーションの既定でもあるメインのフォームのものです。
どうかご教示ください。
0919デフォルトの名無しさんNGNG
>>916
自分でVB6でフォーム作ってそのサンプルのソース貼り付けたりすれば
動くんじゃないの?
0920916NGNG
>>919
VB2.0の.frmファイルはテキスト形式で保存されないためテキストエディタやVB5.0、VB6.0だと開けないんです。
0921916NGNG
VB2.0には.frmをテキスト形式で保存する機能がついてますが、そもそも2.0を持ってないし・・・
0922デフォルトの名無しさんNGNG
日本語版VBで作ったソフトは海外で動作しますか?
また、どうすれば動作することができますか?
単に日本語を使わなければ良いだけなのでしょうか?
0923デフォルトの名無しさんNGNG
>>922
> 日本語版VBで作ったソフトは海外で動作しますか?
完全に動作する。日本語も使える。パソコン持ってけばw
0924デフォルトの名無しさんNGNG
日本語テスト
0925869NGNG
>>918
実行ファイルからだと出来ました。
お騒がせしてすみません。
0926870NGNG
>>918
そりゃ開発環境ではEXEを別途ロードしてhInstanceに
指定しないと無理だわな。
MAKEINTRESOURCEなんてものは Win32では
整数の下位16ビットをLPSTRにキャストしている
だけだと思っとけ。つまりMAKEINTRESOURCEは不要。

>>917
回答の揚げ足を取る暇があるならさっさと試せ、ボケナス。
0927869NGNG
>>926
なるほど!
勉強になります
0928デフォルトの名無しさんNGNG
>>916
あきらめろ。
VB2.0がなけりゃただのゴミ>VB2.0のバイナリ保存されたコード
0929 NGNG
>>915
「COMのインターフェイス不変の原則」なんて 検索しても出てこんぞ。
わからんから、知ってるなら、教えてくれ!

知らんのなら いいけど。
0930915NGNG
>>929
>「COMのインターフェイス不変の原則」なんて 検索しても出てこんぞ。
単語を分けて検索くらいしろよボケナス。

わかりやすく言えば
COMのインターフェイスを一旦公開した後は
その仕様を変えてはいけない。という原則。
「インターフェイスの不変性」とも言う。

COMに限った話でもないと思うけどな。
0931デフォルトの名無しさんNGNG
>929 (= >911)
公開済みのインターフェースを変更する時に追加するならば互換性は保持されるが、
修正、変更などしてしまうと、互換性はなくなってしまう。
「コンポーネントのデバッグ、テスト、配置」
http://www.microsoft.com/japan/developer/library/default.asp?PP=/japan/developer/library/toc/vbcon98/vbcon984-1-1-6.xml&tocPath=vbcon984-1-1-6&URL=/japan/developer/library/vbcon98/vbcondebuggingtestingdeployingcomponents.htm
の「ActiveX コンポーネントのバージョン間の互換性」あたりを読んどけ。

インターフェースって何?って状態ならCOMの基礎からやり直せ。
0932デフォルトの名無しさんNGNG
MSFlexGridを使ってます。
単一行のみしか選択できないようにするにはどうしたらいいでしょうか?
いろいろHPを見てみたんですが良い案が見つかりませんでした
0933916NGNG
>>928
わかりました。VB2.0おそるべし。
0934デフォルトの名無しさんNGNG
>>916
VMwareがいいよ
0935デフォルトの名無しさんNGNG
へっぽこな質問すいません
半角の " (半角二重引用符)ってtextの中でどうやって表示するのですか?
chr$( )
ですか?
さらりと、よろしくお願いします
0936デフォルトの名無しさんNGNG
>>935
'"'
0937935NGNG
>>936
それじゃわからねえんだよ糞野郎。
0938デフォルトの名無しさんNGNG
ダヴルコーテーションって言え。
0939935NGNG
>>936
ん?すいません、わかりません
もちろん>>937は私ではありません
0940デフォルトの名無しさんNGNG
chr(22)だったかな。
0941935NGNG
>>940
だったかなじゃねえよ。
正確に答えろ。
0942940NGNG
まちがえた
chr(34) ですな。
又はchr(&h22)
0943935NGNG
ぶっくるすぞ。
0944935NGNG
>>940
まさしく22です!
狐'sバイナリエディタで見たから間違いありません
0945940NGNG
>>941
ヘッポコな回答でスマソ
てかMSDN見たら?
0946デフォルトの名無しさんNGNG
つーか、なんかかわいそうになったから書いてやる。

 ""
2個重ねる。
0947935NGNG
>>945
いやヘッポコなりによくやった。
感動した!!
0948935 ◆fFbZBKKc NGNG
>>940さん
>>946さん
レスありがとうございます、今から全部やってみます
とりあえず、急いでレスしないと、大変なことになりそうなので
まずはお礼だけ。
0949デフォルトの名無しさんNGNG
>>948
新人か?頑張れよ
0950935NGNG
>948
にせものウゼーぞっ!!!
トリップまでつけやがって。
0951935 ◆fFbZBKKc NGNG
>>949さん
ありがとうございます、趣味でやっております。
必要なアプリ(というほどのものでもないですが)ができれば、そのつど作っています
まだ、VBは半年ほどですが、ブランク5ヶ月で、また必要になったんです
おっと、やらなくちゃ
0952935 ◆fFbZBKKc NGNG
いけました
>>940さん
>>946さん
chr(34)とchr(&h22) で

””でもいけるんですねえ
はじめは、空白になるのでは、と思っていました

ありがとうございました
勉強になりました
0953916NGNG
>>934
初耳のVMwareについて調べてきます。
0954デフォルトの名無しさんNGNG
あるフォルダーにある、HTMLファイルを、
VBからIEを起動して、表示させたいんですけど、
どうやって実装したらいいでしょ?
よろしくお願いします。
0955デフォルトの名無しさんNGNG
>>954
オートメーション(CreateObject)とか、
Shell関数とか、
関連付け起動とか、
方法は色々あるぞボケナス。
0956デフォルトの名無しさんNGNG
>>954
ShellExecute( NULL, NULL, strURL, NULL, NULL, SW_SHOWNORMAL );

strURLに"file:///c:/hoge.html"とかすればいいじゃん
0957ボケナス(954)NGNG
>>955
>>956
レスありがとうございます。
レスの情報から、Googleで検索して、実現できました。
shell32.dllのShellExecuteEXを呼び出すことで実現できました。

0958デフォルトの名無しさんNGNG
as Byte
で宣言した変数が現在何バイトの大きさになっているかを取得する関数がどうしても見つからないのですがよろしくお願いします。
LenやLenBはStringにしか使えないですよね。
0959デフォルトの名無しさんNGNG
>>958
?? Dim A As Byte なら、当然1バイトだと思うが ?
動的配列なのか ? だったら、UBound(A) - LBound(A) だろ。
0960デフォルトの名無しさんNGNG
UBound(A) - LBound(A) + 1 だろ。
0961959NGNG
>>960
すまん、とちった。訂正サンクス。
0962デフォルトの名無しさんNGNG
ByRef引数に値を設定する関数に、クラス変数のメンバを渡すと
値が設定されません。どうしてか分かる方いらっしゃいませんでしょうか。

例)
次の例で、Sub main を実行すると "結果はNG" のダイアログが出ます。

[CLASS1.CLSの内容]
Public val As String
Private Sub Class_Initialize()
val = "NG"
End Sub

[MODULE1.BASの内容]
Sub main()
Dim c As Class1
Set c = New Class1
Call SetByRef(c.val)
MsgBox "結果は" & c.val
End Sub
Public Sub SetByRef(ByRef a As String)
a = "OK"
End Sub
0963デフォルトの名無しさんNGNG
>>962
CLASS1の外からvalを参照すると

Private m_val As String
Public Property Get val() As String
val = m_val
End Property
Public Property Let val(ByVal v As String)
m_val = v
End Property

のようにプロパティ経由でアクセスしたのと同等になるから。
SetByRefがCLASS1にあれば予想通りに動くけどね。
0964958NGNG
>>959さん
おっしゃるとおりバイト配列です。

Dim b() As Byte
b() = Inet.OpenURL(http://www/〜jpg、zip、などインターネット上のファイル)
のように
Inetコントロールでダウンロードしたファイルをb()に格納していますが、
b()がある大きさ以上のバイト数だったらb()に格納されているjpgなどをハードディスクに保存したいので、
現在のb()のサイズを知りたいんです。

'b()をバイナリーアクセスで保存してます。インターネットで検索したコードを貼り付けて使ってるだけなのでよく下のプログラムの意味は理解してませんが。
Open 保存ファイル名 For Binary Access Write As #intFile
Put #intFile, , b()
Close #intFile
'ハードディスクにダウンロードしたzipやjpgを保存完了

>>959さん
>>960さん
UBound(b) - LBound(b) + 1
を試してみます。
0965962NGNG
あぁ、そうか。代入とプロパティレットはコード上は一緒でも
中身は違うのでした。SetByRef関数からはその違いが分からない
から、プロパティレットではなく代入しようとしている、
ということですね。
963さん、日曜日にわざわざありがとうでした。
0966デフォルトの名無しさんNGNG
>>964
MSDN見ながら頑張って理解してみることをお勧めする。
0967958NGNG
>>966さん
あとで調べたことの報告をしますです。
0968デフォルトの名無しさんNGNG
>>958
>LenやLenBはStringにしか使えないですよね。
不正解。
0969958NGNG
>>968さん
つかえるけど特殊な値が返ってくるということでつね。
0970デフォルトの名無しさんNGNG
そろそろ次スレ立てろや
0971968NGNG
>>969
変数のサイズを返す。
変数がByte型なら1、Integer型なら2、Longなら4を返す
ユーザ定義型のサイズ計算にも使える。
ユーザ定義型の変数をLen関数に渡すと論理サイズを返す。
LenB関数に渡すとメモリ上のサイズ(バイトアラインメントを考慮した値)を返す。

文字列の場合はLenで文字数、LenBでバイト数を返す。
0972969NGNG
>>971さん
ありがとうございます。
変数がByte型なら1、Integer型なら2、Longなら4を返す
というのは知りませんでした。これはいつか役立ちそうな気がします。
0973デフォルトの名無しさんNGNG
パス上にXXX.exeがあるかないのかどうなのかの調べる方法がみつかりませんでした
0974デフォルトの名無しさんNGNG
>>973
新山(へろぱ)さんのサイトを覗いてみな
そこのTips集にあったはずだから
0975デフォルトの名無しさんNGNG
>>974
あっタ━━━━━━(゚∀゚)━━━━━━ !!!!!
ありごとうごまきました
0976デフォルトの名無しさんNGNG
XPのSP1が出たらしいね。Formatの仕様があーら、元通り。
0977デフォルトの名無しさんNGNG
あんまりそんなやついないと思うが、
Currency型の変数をFor文の制御変数に使っちゃだめよん。
0978デフォルトの名無しさんNGNG
遅くなるから?
0979デフォルトの名無しさんNGNG
A,B,C,Dという四つの変数(整数型)を作って、
それぞれを乱数にして
A>=B,A>=C,A>=D,A+B+C+D=100
の条件を満たすA,B,C,Dの値を作りたいのですが

Do While A>=B,A>=C,A>=D,A+B+C+D=100
A=int(rnd*100)+1
B=int(rnd*100)+1
C=int(rnd*100)+1
D=int(rnd*100)+1
loop
と書くと非常に効率が悪いです。
もっと効率のいいプログラムってあるでしょうか?
私にはどうしてもこれしか思いつきません…
0980デフォルトの名無しさんNGNG
A = int(rnd*96) + 1
B = int(rnd * (100 - A)) + 1
C = int(rnd * (100 - A - B)) + 1
D = int(rnd * (100 - A - B - C)) + 1

A〜Dの数値をいれかえて、A >= B => C >= D にする
0981980NGNG
失敗
D = 100 - A - B - C
0982980NGNG
完成版
A = int(rnd * 96) + 1
B = int(rnd * (100 - A - 2)) + 1
C = int(rnd * (100 - A - B - 1)) + 1
D = 100 - A - B - C

AからDを並び替える
0983デフォルトの名無しさんNGNG
>>980
> A〜Dの数値をいれかえて、A >= B => C >= D にする
仕様を勝手に変えるなよ。元々は、A>=B, A>=C, A>=D だぞ。
(',' の意味がちょっと不明確だが、まあ AND の意味なんだろうな。)
0984デフォルトの名無しさんNGNG
>>977
理由書いて
0985デフォルトの名無しさんNGNG
>>982
A<25の時に解があるのかな?
もうすでに算数の問題だな。
0986985NGNG
おれはあほだな。
0987デフォルトの名無しさんNGNG
>>985
B=A-b, C=A-c, D=A-d (0 <= b, c, d <= A) とおくと
4*A-b-c-d=100 だから 4*A=100+b+c+d
b+c+d >= 0 なので 4*A >= 100 ∴A>=25 だと思う。
0988987NGNG
一箇所訂正
0 <= b, c, d < A
0989デフォルトの名無しさんNGNG
>>985
> A<25の時に解があるのかな?
> もうすでに算数の問題だな。

A ≧ B, A ≧ C, A ≧ D だから
100 = A + B + C + D ≦ A + A + A + A = 4A
∴ 100 ≦ 4A
 25 ≦ A でないといけない。
逆に、100 = A + B + C + D ≧ B + B + C + D = 2B + C + D
B, C, D の定義域が不明なのだが、多分 1 ≦ A, B, C, D ≦ 100 を想定しているだろうから、100 ≧ 2B + C + D ≧ 2B + 1 + 1
∴ 98 ≧ 2B
 49 ≧ B
当然 C, D も同じだよ。
0990デフォルトの名無しさんNGNG
A=25〜96
B=1〜MIN(A, 98-A)
C=1〜MIN(A, 99-A-B)
D=100-A-B-C
の範囲で生成すれば入れ換え不要だと思うけど、これで合ってる?
教えれ偉いひと。
0991デフォルトの名無しさんNGNG
>>990
次スレよろ。
0992デフォルトの名無しさんNGNG
>>990
> A=25〜96
> B=1〜MIN(A, 98-A)
> C=1〜MIN(A, 99-A-B)
> D=100-A-B-C
> の範囲で生成すれば入れ換え不要だと思うけど、これで合ってる?
> 教えれ偉いひと。

ダメ。A = 97, B = 1, C = 1, D = 1 の解が抜けてる。また、A = 25, B = 1, C = 1 等の場合に D = 73 とかなってしまう。
0993デフォルトの名無しさんNGNG
新スレがたちました。引越しましょう。

http://www.2ch.net/2ch.html
0994デフォルトの名無しさんNGNG
>>993
何だ、そのリンクは。(w
0995デフォルトの名無しさんNGNG
 
0996デフォルトの名無しさんNGNG
 
0997デフォルトの名無しさんNGNG
   
0998デフォルトの名無しさんNGNG
  
0999デフォルトの名無しさんNGNG
>992
A,B,C,Dが自然数だったら、
n = 100
A = int( rnd * ( n - n / 4 -2 )) + n / 4
B = int( rnd * iif( A >= n / 2 - 1, n - A - 2 , n / 2 - 1 )) + 1
C = int( rnd * iif(( A + B ) >= n / 2, n - ( A + B ) - 1, n / 2 - 1 )) + 1
D = n - A - B - C
かな?
1000デフォルトの名無しさんNGNG
次スレ
http://pc3.2ch.net/test/read.cgi/tech/1032706491/l50
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。