VBプログラマ質問スレ(6.0以前) Part46
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2006/02/03(金) 22:58:330002デフォルトの名無しさん
2006/02/03(金) 22:58:530003デフォルトの名無しさん
2006/02/03(金) 22:59:04http://pc8.2ch.net/test/read.cgi/tech/1133977286/989
0004デフォルトの名無しさん
2006/02/03(金) 23:01:43質問者は使用しているOS、VBのバージョン、サービスパックのバージョン、
「何がしたくて、どうしたけど、どう困っているのか」を明確に書きましょう。
前スレ >>3
VB.NETは別物なので専門スレで、
VBS、APIの質問もそれぞれのスレで。
VBAは、Officeアプリの操作以外ならばこのスレで質問しても大丈夫です。
MSDN Online Japan ホーム
http://www.microsoft.com/japan/msdn/default.asp
Visual Studio 6.0 Service Pack 6 正式リリース
http://msdn.microsoft.com/vstudio/downloads/updates/sp/vs6/sp6/default.aspx
http://www.google.co.jp/
※「まず自分で調べる」クセを身につけよう。
0005デフォルトの名無しさん
2006/02/03(金) 23:09:47そろそろこっちに移行した方が幸せ?かもな。無料だし。
ま、最新スペックのPCにメモリ大盛りでもIDEが激しく重いがw
Visual Basic 2005 Express Edition 日本語版
http://www.microsoft.com/japan/msdn/vstudio/express/vbasic/
0006デフォルトの名無しさん
2006/02/03(金) 23:16:33あ、新入社員?ご愁傷様。
0007デフォルトの名無しさん
2006/02/03(金) 23:20:39そのためのスレッド乙>>1!!!!!!!!111
0008デフォルトの名無しさん
2006/02/03(金) 23:57:18ちっこいアプリつくる程度なら6のが手軽なきがすっけど。
0009デフォルトの名無しさん
2006/02/03(金) 23:59:48正直今は趣味にも使えない・・・
というわけで俺はVB6派
0010デフォルトの名無しさん
2006/02/04(土) 00:37:07VBニート・・・
0011デフォルトの名無しさん
2006/02/04(土) 00:42:10残念C++/Java/.NET系は扱えることは扱える
しかも学生(orz
0012デフォルトの名無しさん
2006/02/04(土) 00:55:59いいな『.NEET』
これからこう呼ぼう
0013デフォルトの名無しさん
2006/02/04(土) 01:02:370014デフォルトの名無しさん
2006/02/04(土) 01:52:070015デフォルトの名無しさん
2006/02/04(土) 02:02:280016デフォルトの名無しさん
2006/02/04(土) 02:06:20つまりVistaがリリースされたらVB6を卒業すると・・・
0017デフォルトの名無しさん
2006/02/04(土) 02:20:420018デフォルトの名無しさん
2006/02/04(土) 02:28:540019デフォルトの名無しさん
2006/02/04(土) 02:49:190020デフォルトの名無しさん
2006/02/04(土) 03:21:380021デフォルトの名無しさん
2006/02/04(土) 04:39:12カラムで区切られてるのってListViewコントロールじゃないのかしら?
どうもうまくいかん。
0022デフォルトの名無しさん
2006/02/04(土) 05:53:19つ Spy++
0023デフォルトの名無しさん
2006/02/04(土) 05:56:23vistaでvb6のアプリは動くのかい?
cとかjavaも画面がないやつなら書いたことあるけど、
画面があるアプリつくるのにvb6からシフトするならどの言語がお勧め?
0024デフォルトの名無しさん
2006/02/04(土) 06:35:20行くぞ彰ホームラン!センターオーバーホームラン!
弾丸ライナーだ!飛ばせ!運べ!彰!
俺が考えた歌詞ですよ!
弾丸ライナーだ!の後に「ヘイ!」とか「おい!」って掛け声を入れてスタンドでジャンプするの
とかいれると面白いかもしれない。
0025デフォルトの名無しさん
2006/02/04(土) 06:47:54これはボケ・・・なのか?
>>23
言語の問題じゃないでしょそれは。
0026デフォルトの名無しさん
2006/02/04(土) 07:13:40Dim a As Date
Dim b As Date
a = CDate("18:30:00")
b = CDate("18:15:00")
b = CDate(DateAdd("n", 15, b))
If a = b Then
Call MsgBox("OK")
Else
Call MsgBox("NG")
End If
上のを動かすとOKにならないんだけど、うちの環境だけなのかな?
OS:WinXPSP2
0027デフォルトの名無しさん
2006/02/04(土) 07:40:56VB6はXPでは動作保証されてないよ。
で、日付の比較は DateDiff。
0028デフォルトの名無しさん
2006/02/04(土) 09:00:51002926
2006/02/04(土) 09:18:58にするとOKになるんで今までDateDiff関数なんか使ったことないです。
DateAdd関数使うとミリ秒の誤差が発生するってことですよね?
0030デフォルトの名無しさん
2006/02/04(土) 09:40:59全然違うが。
0031デフォルトの名無しさん
2006/02/04(土) 09:51:410032デフォルトの名無しさん
2006/02/04(土) 14:00:30それほんと?
>>29
確かに同じ日付(時刻)どうしを引き算すると値があることがあるわけだけど、
そういう引き算に何か意味があるのかといえば、無いのではないかと思われる。
やはり日付操作はそれ専用の関数を使わないといけないということだけなのでしょう。
003332
2006/02/04(土) 14:08:272 つの日付型の式を含む除算は倍精度浮動小数点数型が返ってくるとある。
日付型が返ってくるわけではないのでおよそ意味不明なことになるけど
不具合でもなくて仕様どおりですね。
因みに、日付型とその他のデータ型を含む除算は日付型を返すと言っている。
0035デフォルトの名無しさん
2006/02/04(土) 14:34:51VBの日付型は1分を1/1440の小数であらわすので微妙な誤差が出る。
それからDateAddの日本語版のマニュアルの記述に誤りがある。本当は次のとおり
Returns a Variant of subtype Date.
そなもんで b = CDate(CStr(DateAdd("n", 15, b))) と書けばOKが戻るはず。
0036デフォルトの名無しさん
2006/02/04(土) 15:00:290037デフォルトの名無しさん
2006/02/04(土) 15:08:42普通に考えて、開発環境より後に世に出たOS上で、その開発環境がまともに動く訳がない。
ttp://www5.airnet.ne.jp/init/vb/level1/level1001.html
こんなサイトもある。
で、日付型に「=」を使う事自体がそもそも間違い。VBだしエラーにはならないけど、結果は不定。
日付型専用の DateDiff がわざわざちゃんと用意されてるんだから。
0038デフォルトの名無しさん
2006/02/04(土) 15:09:050039デフォルトの名無しさん
2006/02/04(土) 15:09:34DateDiff 使えばいいだけの話なので、ややこしくも何ともない。
0040デフォルトの名無しさん
2006/02/04(土) 15:22:25tabで補完してくれる分には嬉しいけど、複数の候補が有る場合に一番使わないのに確定しちゃうのはちょっとなぁ・・・
0041デフォルトの名無しさん
2006/02/04(土) 15:22:290042デフォルトの名無しさん
2006/02/04(土) 15:41:26上の例だと1.11E-16だけ誤差があるようで、DateDiff使うのがやっぱり無難でしょう。
Date型の内部表現やDoubleとの互換性はマニュアルにも明記してあるんだから、
それを意識して使うなら問題はない。
0043デフォルトの名無しさん
2006/02/04(土) 16:22:45いや「無難」じゃなく、それしか方法はなく、それだけが正しいのだが。
0044haha
2006/02/04(土) 16:33:36OLEDragDrop イベントを使うらしいのですがなんだかよくわかりません。
まずファイルのパスを取得して、ロードで読み込みをするんでしょうか?
でもドロップファイルのパスの取得のやり方もわかりませんし…。
どのようにして実現させるのでしょうか? どなたか教えてください。
0045デフォルトの名無しさん
2006/02/04(土) 16:35:32とりあえずOLEDropModeを自動に設定
OLEDragDrop()イベントで引数DataのFilesコレクションの中身を列挙するForEach文を書く
で、ファイルをD&D
かもしれない
0046デフォルトの名無しさん
2006/02/04(土) 17:03:160047デフォルトの名無しさん
2006/02/04(土) 17:15:52つMSDNヘルプ
0048デフォルトの名無しさん
2006/02/04(土) 17:23:15ありがとう
ぐぐってみます
0049デフォルトの名無しさん
2006/02/04(土) 17:24:580050デフォルトの名無しさん
2006/02/04(土) 17:27:53BitBltはDCからDCにビットマップを転写するAPI
画像読み込む云々は全く関係ない・・
0051デフォルトの名無しさん
2006/02/04(土) 17:55:40ありがとう
でもこのサイトにはスピードがあるって書いてあるよ
ttp://www005.upp.so-net.ne.jp/h-masuda/vb6/vb6api/vb6api04.html
API自体が速いってこと?
0052デフォルトの名無しさん
2006/02/04(土) 18:03:29For Each bj In f1.Files
こうすると、「Function または変数が必要です」となります。どうしてですか?
0053デフォルトの名無しさん
2006/02/04(土) 18:05:10PaintPicture()メソッドはVBの内部と癒着しまくって動いているから(描写以外にも何かしてるはず)
基本的に低速
BitBltはその辺GDI直だから結構早い
それでも遅いときはDIB系のAPIつかう
まだ早くしたいときはDirectXか?
0054デフォルトの名無しさん
2006/02/04(土) 18:06:12多分しないとマトモに動かないから
0055デフォルトの名無しさん
2006/02/04(土) 18:06:54とりあえず msgbox Typeof(fk.getfolder("c:")) の値を見せなさい。
0056デフォルトの名無しさん
2006/02/04(土) 18:07:420057デフォルトの名無しさん
2006/02/04(土) 18:08:09↑これなんてキャラ?
0058デフォルトの名無しさん
2006/02/04(土) 18:09:03わかった
どうも親切にありがとう
0059デフォルトの名無しさん
2006/02/04(土) 18:19:06ループの中でFolderでした。bjはファイルにならないのかな?
0060デフォルトの名無しさん
2006/02/04(土) 18:24:25じゃこれだ:
http://www.interq.or.jp/student/exeal/dss/ref/wsh/scripting/folder.html
0061デフォルトの名無しさん
2006/02/04(土) 18:25:41f1 と fk とbj の宣言部分は?
0062デフォルトの名無しさん
2006/02/04(土) 18:27:47とりあえずさ、例外を再現できるコード(vbsファイルにコピペすれば大体動くような)を提示してくんない?
なぞなぞやってるわけじゃないんだから
006359
2006/02/04(土) 18:36:45006426
2006/02/04(土) 18:45:12納得出来ました、ありがとう。
>37
専用関数使えば良いだけなんだろうけど
文字列の比較もStrComp関数で…とか屁理屈考えちゃいました。
0065デフォルトの名無しさん
2006/02/04(土) 18:47:18あと、文字列→日付にCDate()使ってるみたいだけど
あれはWindowsの設定によって解釈変わっちゃう可能性あるから、
DateSerial()+TimeSerial()で作った方が安全だと思うぞ
0066デフォルトの名無しさん
2006/02/04(土) 18:49:450067デフォルトの名無しさん
2006/02/04(土) 18:50:32VB6と被ってる関数/クラスならいいんでね?
俺は
0068デフォルトの名無しさん
2006/02/04(土) 18:54:39何がどう駄目でどの様に解決したのか全然分からん。
0069デフォルトの名無しさん
2006/02/04(土) 18:56:42ttp://ttsearch.net/s.cgi?k=Excel+VBA&o=r
0070デフォルトの名無しさん
2006/02/04(土) 19:00:32Sub UHA()
S = "Select qq.* From kimo.txt qq"
c = "ODBC;DSN=Text Files;DefaultDir=C:\www"
With Sheets(2).QueryTables.Add(Connection:=c, Destination:=Range("a1"), Sql:=S)
.Refresh
End With
End Sub
のあと、シート2のソートが正常に動作してくれません
0071デフォルトの名無しさん
2006/02/04(土) 19:04:38非表示のPictureBoxに絵を読み込んで他に転写する方法っていかにもVBっぽいよな
0072デフォルトの名無しさん
2006/02/04(土) 19:04:560073デフォルトの名無しさん
2006/02/04(土) 19:12:45突っ込むのはビューだからかもなー
よく分からん
orderbyでソートしたら?
>>71
たすかに
CreateCompatibleDC/Bitmap使ってとかは面倒なんだろ
0074デフォルトの名無しさん
2006/02/04(土) 19:25:35解説をお願いします。突っ込む ビュー のあたりが初耳です
0075デフォルトの名無しさん
2006/02/04(土) 22:32:12との事なんで質問させていただきます。
Excel2002 + MySQL
VBAからテーブルのバックアップを取ろうと思って以下の処理を書いて
見たんですが、バックアップファイルが出来ません。
Dim shell_str As String
Dim ret
shell_str = "mysqldump database table1 -u root -phogehoge > D:/Data/SQL/table1.sql"
ret = Shell(shell_str, vbMinimizedNoFocus)
これをバッチファイル(例えばbkup.bat)にして
ret = shell("c:\temp\bkup.bat",vbMinimizedNoFocus)
で正常に走る事は確認しているんですけど、出来たらちょこまかしたバッチ
ファイルは作らずにVBA上からやりたいと思っています。どういう風にすれば
よろしいんでしょうか。
0076デフォルトの名無しさん
2006/02/04(土) 22:53:32shell _str = "cmd /c""mysqldump database table1 -u root -phogehoge > D:/Data/SQL/table1.sql"""
0077デフォルトの名無しさん
2006/02/04(土) 23:03:33おおお〜!即レス有難うございますm(__)m。
なるほど、そういう風に書くんですね!
実行してみたら出来ました。有難うです。
0078デフォルトの名無しさん
2006/02/04(土) 23:21:09どなたかご親切な方いましたら
post methodの使い方をご教授願います。
ブラウザーを介さず直接サーバーに情報を送信したいのです。
■ このスレッドは過去ログ倉庫に格納されています