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

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

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさんNGNG
ここは Visual Basic 〜6.0 の質問スレです。
質問者は使用しているOS、VBのバージョン、サービスパック
何がしたくでどうしたけどどう困っているのかを明確に書きましょう。

○関連スレッド
VB.NETは別物なので、基本的に質問はこちらへ
VB.NET質問スレ (Part5)
http://pc5.2ch.net/test/read.cgi/tech/1078134703/

API関連の質問はこちらへ
Win32API質問箱 Build19
http://pc5.2ch.net/test/read.cgi/tech/1084697545/

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
API 技術関連 - VBでのWin32APIのサンプル
http://homepage1.nifty.com/MADIA/vb/VBKANREN.htm
Google
http://www.google.co.jp/
※「まず自分で調べる」を身につけよう。

○VB以外の質問スレ
C++相談室 Part31
http://pc5.2ch.net/test/read.cgi/tech/1086185282/
C++Builder相談室 Part9
http://pc5.2ch.net/test/read.cgi/tech/1080541814/
★初心者にVisual C++を教えるスレ★ Part12
http://pc5.2ch.net/test/read.cgi/tech/1083585833/
0002デフォルトの名無しさんNGNG
○過去スレログ
  Part33 http://pc5.2ch.net/test/read.cgi/tech/1080606445/
  Part32 http://pc5.2ch.net/test/read.cgi/tech/1077216109/
  Part31 http://pc5.2ch.net/test/read.cgi/tech/1073732636/
  Part30 http://pc5.2ch.net/test/read.cgi/tech/1069160036/
  Part29 http://pc5.2ch.net/tech/kako/1065/10654/1065446334.html
  Part28 http://pc5.2ch.net/tech/kako/1061/10612/1061296197.html
  Part27 http://pc5.2ch.net/tech/kako/1058/10586/1058674927.html
  Part26 http://pc5.2ch.net/tech/kako/1055/10551/1055145106.html
  Part25 http://pc2.2ch.net/tech/kako/1052/10526/1052627913.html
  Part24 http://pc2.2ch.net/tech/kako/1050/10501/1050151126.html
  Part23 http://pc2.2ch.net/tech/kako/1047/10477/1047743187.html
  Part22 http://pc2.2ch.net/tech/kako/1046/10463/1046354784.html
  Part21 http://pc2.2ch.net/tech/kako/1044/10440/1044028945.html
  Part20 http://pc2.2ch.net/tech/kako/1041/10418/1041879465.html
  Part19 http://pc3.2ch.net/tech/kako/1039/10398/1039859691.html
  Part18 http://pc3.2ch.net/tech/kako/1038/10381/1038103769.html
  Part17 http://pc3.2ch.net/tech/kako/1036/10361/1036154952.html
0003デフォルトの名無しさんNGNG
  Part16 http://pc3.2ch.net/tech/kako/1034/10343/1034302532.html
  Part15 http://pc3.2ch.net/tech/kako/1032/10327/1032706491.html
  Part14 http://pc3.2ch.net/tech/kako/1030/10309/1030947162.html
  Part13 http://pc3.2ch.net/tech/kako/1029/10292/1029241786.html
  Part12 http://pc3.2ch.net/tech/kako/1026/10266/1026642565.html
  Part11 http://pc.2ch.net/tech/kako/1024/10243/1024380249.html
  Part10 http://pc.2ch.net/tech/kako/1022/10221/1022127528.html
  Part 9 http://pc.2ch.net/tech/kako/1020/10208/1020830472.html
  Part 8 http://pc.2ch.net/tech/kako/1018/10187/1018794901.html
  Part 7 http://pc.2ch.net/tech/kako/1015/10158/1015836357.html
  Part 6 http://pc.2ch.net/tech/kako/1013/10138/1013844542.html
  Part 5 http://pc.2ch.net/tech/kako/1010/10106/1010624646.html
  Part 4 http://pc.2ch.net/tech/kako/1006/10069/1006922992.html
  Part 3 http://piza2.2ch.net/tech/kako/1000/10005/1000523122.html
  Part 2 http://piza2.2ch.net/tech/kako/990/990793224.html
  Part 1 http://piza2.2ch.net/tech/kako/968/968328471.html
0004デフォルトの名無しさんNGNG
Outlookのメール(〜.msg)をOutlookExpressのメール(〜.eml)に
変換するにはどうしたらよいでしょうか?
0005デフォルトの名無しさんNGNG
OutlookからOutlookExpressにメールする。
0006デフォルトの名無しさんNGNG
>>4
*.msg の仕様と *.eml の仕様を自分で調べてコンバートする。
自分でコンバートできなかった場合は、自分でやったソフトのどこが悪くてコンバートできなかったのかを晒す。
0007デフォルトの名無しさんNGNG
>>5
あったまい〜い!
0008デフォルトの名無しさんNGNG
>>5
ヘッダ情報も変換したいのならぜんぜんだめだな。
0009デフォルトの名無しさんNGNG
>>4
OutlookExpress でインポートする。
00104NGNG
いろいろありがとうございます。
とりあえず、バイナリーファイルの〜.msgを調べてみます。
なんか、難しそう(´・ω・`)
参考になるページとか知りませんか?
0011デフォルトの名無しさんNGNG
立方メートルの m3
ていうのを使おうとすると ?になってしまいます。
どうしたらいいのでしょうか?
0012デフォルトの名無しさんNGNG
メモ帳やExcelでは使えてる。
0013デフォルトの名無しさんNGNG
ある文字列に 指定した文字が 何番目にあるか というのを
調べる関数を 教えてください。
どわすれしちゃいました。
0014デフォルトの名無しさんNGNG
instr
0015デフォルトの名無しさんNGNG
>>11
OS、VBが日本語版か確認する。
正しく表示できないオブジェクトの Fontプロパティを調べ、適切なフォント、文字サイズ、キャラセットを設定する。
0016デフォルトの名無しさんNGNG
>>11
JISコードには立方メートルを表すフォントは存在しない。
ビットマップファイルで書くかリッチテキストで"3"を上付きに設定するしかない。
0017デフォルトの名無しさんNGNG
Webぶらうざこんとろーるでもできたような
0018はちみつ六郎NGNG
メニューのショートカットに「Tab」や「Shift+Tab」などを割り当てるには
どうすればよいでしょうか。
もともと割り当て可能な文字以外はキャプションに入れるしかないんでしょうか。
そうするとほかのショートカットと文字がずれてしまうんで、何とかしたいんですが…。
0019デフォルトの名無しさんNGNG
どうしてウィンドウクラス名がThunder〜なのですか?
0020デフォルトの名無しさんNGNG
>>18
そんな使いにくいソフト、誰が使うんだ?
0021はちみつ六郎NGNG
>>20
使いにくいでしょうか。。
エディタにインデントとそれを戻す機能をつけたんで
VBとかの開発環境と同じショートカットにしようと思っただけなんですが…
0022デフォルトの名無しさんNGNG
>>18
Menu.caption = "ポリデント" & vbTab & "Tab"

ただしキーを広う処理は自前になる。
0023デフォルトの名無しさんNGNG
呼び出した側のformの値を取得したい時に、コードでそのform名を直接指定しなく
ても値とってくる方法ってありますか?自分が作ってるformを汎用にしたいので。
WEBで何と検索かけたらいいかわからなかった
0024はちみつ六郎NGNG
>>22
ありがとうございます、きれいにそろいました!!
0025デフォルトの名無しさんNGNG
>>23
何やりたいか分からん。
直接指定すると汎用にできないの?
0026デフォルトの名無しさんNGNG
XPでバルーンメッセージってありますよね?
アレってどうやって表示させてるんでしょう?
これってトリビアに(略
0027デフォルトの名無しさんNGNG
>>26
ワラタ
0028デフォルトの名無しさんNGNG
>>25
各formが必ず持っている値を取得したいのです。いろんなformで自作のformを
開けるようにしようとしています。
親フォームに[人code]というコントロールがついていて、自作のformが開かれ
た時に、人codeからその人の詳細データを表示しようとしています。ただ詳細デ
ータを表示する時が決まっているわけではなく、いろんなformから呼び出せる
ようにしたいと思っています。
0029デフォルトの名無しさんNGNG
>>28
いちばん親になるフォームに、public でフォームへの参照変数でも
保持したらいかんの?
0030デフォルトの名無しさんNGNG
>>29
レスさんくす。それ考えたんだけど、その方法以外になんかあるんじゃないか?
と思ってみました。
0031デフォルトの名無しさんNGNG

・親フォームA に [人Code]コントロールが付いている。
・AからポップアップされたフォームBで[人Code]コントロールの保持している
データを使いたい。

こういう理解でいいの?
0032デフォルトの名無しさんNGNG
>>28
それならば自分で ActiveXコントロール(*.ocx) を作った方が良い。
ActiveXコントロール に設定させたいプロパティを Propertyステートメント で追加し、
プロジェクトに表示用フォームを追加して *.ocx を作成し、
各オーナーフォームで「プロジェクト」-「コンポーネント」で追加してやれば良い。
0033デフォルトの名無しさんNGNG
>>31
そうです。上手い説明が思いつかなくて、やろうとしてることそのまま書いちゃい
ました。
0034デフォルトの名無しさんNGNG
>>31
俺は子画面に親フォームへの参照を埋め込んで、
それを使って、親フォームのコントロールにアクセスしてる。
親フォームからも操作できるように、親フォームにも
子フォームへの参照を保持してます。

If Not frmChild Is Nothing Then

End If

これで子フォームが存在するかどうかもチェックできるし。

汎用というのが良く分からんのだが、これじゃダメなのかな?


0035デフォルトの名無しさんNGNG
指定の時刻になると処理を実行するようにプログラムするにはどうしたらよいでしょうか。
10分置きに処理したいデータがあるのですがDo〜Loopで処理すると重くなってしまいます。。

このようなプログラムを想定しています。
9:10(処理)
9:20(処理)
9:30(処理)
 ・
 ・
 ・
5:00(終了)

何かいい方法がありますでしょうか・・
0036デフォルトの名無しさんNGNG
>>35
Timerオブジェクト使ったら?
時刻に応じた動作なら、Timerオブジェクトで発生したイベントで
時刻を監視する形になる。
0037デフォルトの名無しさんNGNG
Sub Main()
  MsgBox "09:10になったら[OK]をクリックしてください", vbOKOnly
  Call Execute0910
  MsgBox "09:20になったら[OK]をクリックしてください", vbOKOnly
  Call Execute0920
:
:


ゴメソ...
0038デフォルトの名無しさんNGNG
>>36
Timerは試してみて結構うまくいったのですが
最初にずれてしまうとあとの時間もずれていくので使おうか迷っています。。
途中でなんらかのエラーで終了してしまった場合を考えると頭が痛くなりますた。

>>37
漢でつね!!!
0039デフォルトの名無しさんNGNG
>>38
VBにこだわらず、タスクマネージャー使えば?
0040デフォルトの名無しさんNGNG
>>38
タイマーで、たとえば0.5秒ごとに時間をチェックして、などの考えは浮かばないものなのか
004138NGNG
Timerで時間を監視というのはそう意味なんですね。
解決しました。

自分が馬鹿すぎて鬱だ・・・
0042somebody help!NGNG
VBでフォーム一覧をリストアップする方法ってどうすればよいのでしょうか?
String変数にフォーム名が入っているので、それを利用してフォームオブジェクトを捕まえたいのです。
0043はちみつ六郎NGNG
>>42
Formsコレクションで、こういうのはよくやるね。

Dim objForm As Object

For Each objForm In Forms
If objForm.Name = strFormName Then
'処理
End If
Next objForm
0044還暦VBおじさんNGNG
確か、前には動いていたのに!
ME事故って、VB入れ直したら
マウスの中央ボタンでコード画面が動きません!
誰か助けてください!
0045デフォルトの名無しさんNGNG
>>44
「どこでもホイール」などのソフト入れりゃいい
0046デフォルトの名無しさんNGNG
>>42
form.controlsプロパティではいかんの?
0047還暦VBおじさんNGNG
ドーモ^2
ありがとう、やってみます
0048還暦VBおじさんNGNG
>>45
「どこでもホイール」で上手くいきました。
お世話になりました。
0049somebody help!NGNG
>>43
助かりました、Formsコレクションデフォルトで存在するのですね。
Thanks!
0050デフォルトの名無しさんNGNG
VB6.0を使って常駐しているシステムプロセスの再起動ってできますか?
Windows Meを使っていてMsgsrv32.exeがよく応答なしになるのでこれを再起動したいと思うんですが、
こんなプログラムって作れないんでしょうか?

OS Windows Me
VB 6.0 プロフェッショナル SP6
0051デフォルトの名無しさんNGNG
>>50
とりあえず、環境を見直してみたらどうよ?
Msgsrv32の応答なしはMeで発生しやすい現象だが、
あまりに頻繁な場合は、環境に問題があるかもしれないし。
005250NGNG
>>51
確かにそうなんですけど、応答なしになったときの対処で
Msgsrv32の再起動が有効ならその手のツールを使うことで解決できるかも、と思ったので。
VBでは、というよりこんな事はやはり無理なんでしょうか。
0053デフォルトの名無しさんNGNG
2000かXPにしようよ。
005451NGNG
>>50=52
プロセス系詳しくないんで間違ってるかもしれんが、
TerminateProcessで終了させてCreateProcessとかShellExecuteExで起動かと。
ま、仮に正解だったとしても、
システム絡みのMsgsrv32がこの方法で正常動作するのかはわからんガナー。
0055デフォルトの名無しさんNGNG
ディレクトリのリストを取得したいのですが、
どしたらいいでしょうか?

DirListBoxを使わない条件でおながいします。
0056デフォルトの名無しさんNGNG
opendirとreaddir
005750NGNG
>>53
いろんな理由から9x系を使わなければならないので無理なのです。

>>54
なるほど。
やっぱりシステム関係は無理っぽいですよね。
どうもありがとうございました。
0058デフォルトの名無しさんNGNG
数学で出てくるようなx−y軸の
グラフを描きたいのですが、
どのようなコマンドがひつようですか?
0059デフォルトの名無しさんNGNG
>>58
Line と Pset、RGB も調べれば問題ないでしょう。
0060Lineメソッドじゃ不満か?NGNG
セクシーコマンドー
0061デフォルトの名無しさんNGNG
>>59
わかりました。
0062デフォルトの名無しさんNGNG
描いたグラフをexcel形式にすることはできますか?
0063デフォルトの名無しさんNGNG
ttp://cgi.2chan.net/m/src/1087723293382.jpg
こういうの使いたいんですけど、なんていうコントロール使えばできますか?
VB6でwindowsXPです。
よろしくおねがいします。
0064デフォルトの名無しさんNGNG
VB初心者という訳ではないのですが、困ってますので助けて貰えるとありがたいです。
やりたいことは単純です。

ローカルのドライブにあるファイルをCD-R(W)にコピーしたいのです。
普通にFileCopyステートメントやAPIのCopyFile関数を使用してもエラーになってしまいます。

何か特別な処理が必要なのですか?
環境はWindowsXPのプロフェッショナルです。
0065デフォルトの名無しさんNGNG
>>63
ListViewコントロールというやつです。

プロジェクト -> コンポーネントで
Microsoft Windows Common Controls
Microsoft Windows Common Controls2
この2つを選択すると、左側のデザイナにListViewが
表示されます。

WindowsのAPIレベルで提供されているコントロールです。
0066デフォルトの名無しさんNGNG
>>62
描いたグラフをExcel形式にするのはできないと思います。
簡単なのはグラフの基になるデータをCSVファイル形式で出力し、Excelで取り込む事ですが、
OLEを使用してVB上からExcelを操作しグラフを描かせる事もできたと思います。
ネット上で「Excel VB OLE」で検索してみるか、本屋で関連書物を読んでみるのも良いと思います。
0067デフォルトの名無しさんNGNG
>>64
IMAPI
006864NGNG
>>67
サンクス!
ググったらそれらしいのが出てきた。

しかし、当方にはタイプライブラリを作成する技量も、英語のリファレンスを解読する知識が無いのが問題だ・・・。
サンプルとか落ちてないですか?
と、一応自分でも探してみるです。
0069デフォルトの名無しさんNGNG
>>64
興味持ったのでググってみた。
試してないけど、たぶん↓の633が参考になると思う。
http://www.momo-lab.net/kibidango/cbbs.cgi?mode=all&namber=600&type=0&space=0&no=0
0070デフォルトの名無しさんNGNG
画面外にあるに実行したプロうグラムの画面全体の
スクリーンショットを取ることは出来ますか?
007163NGNG
>>65
ありがとうございます。
0072デフォルトの名無しさんNGNG
Is is possible to take screen-shots of the whole screen of the
launched program which is out of the screen ? :-)
0073デフォルトの名無しさんNGNG
>>69
>burning files into your disc
英語でも「焼く」って表現するんだね、知らんかった。
0074デフォルトの名無しさんNGNG
>>73
Nero の正式名は Nero Burning ROM
0075デフォルトの名無しさんNGNG
>>70
ほかのアプリのデバイスコンテキストを横取りするってこと?
007664NGNG
>>69
そのコードをそのまま使用してCD-R(W)に書込み準備(?)するところまではできたんだけど、
そこから先がうまくいかない。

全自動でできれば言うことないんですが、
せめてWriting Wizardが立ち上げるとこまでやりたいです。

自分の技術力の無さが情けなくなってくる。
0077デフォルトの名無しさんNGNG
VB6(SP6)にて
1.TabStripの背景色(タブの背景)を変更する方法
2.TreeViewのアイコン上でマウス右ボタン->メニュー->追加選択->子ノード新規作成
以上2点
2ちゃんのにーちゃんたち教えてみそ
0078デフォルトの名無しさんNGNG
全然分からないので、教えてください。
お願いします。
Visual Basic を使って、
y=ax+bの係数a,bを求めるには、どのようにプログラムを書けばいいんでしょうか?
y,x(yi,xi)は、それぞれ10個ずつ値があります。
0079デフォルトの名無しさんNGNG
>>78
yをxで割った商をa、余りをbにしる。
0080デフォルトの名無しさんNGNG
comboboxのスピン機能を止めたい時はどうしたらよかですか?
008178NGNG
>>79
すいません。
a,bだけじゃなくて、
d^2 = Σ(i=1 10) {f(a,b,xi) - yi / yi}^2(最小二乗法)
f(a,b,x) = ax + b
の d^2も求めたいんです。
あと、For  Next 文を使って求めたいんですが、
誰か分かる方、教えてください。
お願いします。
0082デフォルトの名無しさんNGNG
>>78
学校の課題臭いな。それぐらい自分で解決しろよ。
ていうか、君問題自体をまず正確に理解してないと思う。
008378NGNG
>>82
最小二乗法による回帰直線ですよね。
aとbの値がそれぞれ与えられてれる場合は分かるんですが、
aとbが未知数の時(そういう問題なんですが)、
どのようにプログラムを組めばいいか分からないんです。
008480NGNG
説明がおかしかったとです。formに複数いろんなコントロールを貼り付けていて
KeyDownプロシージャを利用して次のコントロールにフォーカスを移すようにし
ています。コンボボックスでも同じようにフォーカスを移していきたいんですが
、次のコントロールに行く時に値が変わってしまいます。どうか知恵を貸してく
ださい
0085デフォルトの名無しさんNGNG
>>83
回帰分析の説明で回帰直線係数の式が定義されてないか?
a=nΣxiyi-(Σxi)(Σyi)/nΣxi^2-(Σxi)^2とb=Σyi/n-aΣxi/nとか。

具体的なデータが与えられてるなら、それを代入してaの近似値が求めら
れるから、そこからbも出るんで回帰直線式の傾き(a)と切片(b)はOK。

相関係数も同じ。
分母にルートを取るΣ(i=1...n)(xi-x平均)^2(yi-y平均)^2と、
分子にΣ(i=1...n)(xi-x平均)(yi-y平均)みたいな式が教科書に書いてない?
式の構成に必要な元データを配列に入れて、それを公式どおりに組み上げ
た代入式をループの中に入れる。

つか、公式の展開をここで聞くのはスレ違いっぽいと思うよ。
教科書通りの式で理解しにくかったなら、同様の解を得られる別の公式を
探してみそ。
0086デフォルトの名無しさんNGNG
>>84
面倒だから試してないけど KeyCode = 0 とかやってもだめか?
0087デフォルトの名無しさんNGNG
VB6.0sp3/Win2000を使用しています。
動的にコントロールを、
Me.Controls.Add("VB.CommandButton", sNewButtonName)
として作成しています。
このように動的にコントロールを作成した後、
styleプロパティを「1 - グラフィックス」に変更したいのですが、
可能でしょうか?SendMessageLong()等で変更できるのでしょうか?

宜しくお願い致します。
0088デフォルトの名無しさんNGNG
単なるレイアウト上の都合によるコンテナコントロールを使いたい場合
PictureBoxとFrameのどちらのほうが軽いのでしょうか?
0089デフォルトの名無しさんNGNG
>>88
どっちも一緒じゃないの。UserControlをコンテナにするのは、重たそうだけど。
0090デフォルトの名無しさんNGNG
VB6で16進表記をビット文字列に変換する関数とかない?

例えば

&h0 -> "00000000"

とか
0091デフォルトの名無しさんNGNG
>>90
Hex関数じゃダメなのかな?
0092デフォルトの名無しさんNGNG
>>90
ない
自分で作ったほうがいい
0093デフォルトの名無しさんNGNG
>>80
Windowsアプリケーションの設計上、ComboBoxで上下キーを使えなくするのはオススメできない。
フォーカスの移動はTabIndexで順番を決めた方が良い。

>>87
予め作成するコントロールのプロパティが .Style=1 固定の場合、
Loadステートメントを使用してインスタンスを作成するという手もある。

' 予め Command1 を作成し、Indexプロパティ = 0、Styleプロパティ = 1 に設定しておく。
Private Sub Command1_Click(Index As Integer)
  Select Case Index
  Case 0
  ...
  Case 1
  ...
  End Select
End Sub

Private Sub Form_Load()
Const ButtonCount As Integer = 2
  Select Case ButtonCount
  Case 0
    Command(0).Visible = False
  Case 2
    Load Command(1)
    Command(1).Visible = True
  End Select
End Sub
0094デフォルトの名無しさんNGNG
>>88
PictureBoxのほうが断然軽い
Frame使ってる奴はバカ
0095デフォルトの名無しさんNGNG
小数点を含んだ値、例えば10.25、201.22、555555.55
など、小数点以下を取得したいのですが、どのような
関数を使って取得すればよいでしょうか?

0096デフォルトの名無しさんNGNG
10.25 - Fix(10.25)
0097デフォルトの名無しさんNGNG
>>94
「軽い」って意味不明だが、より資源食わないって意味なら逆だよ。

>>95
そんなのVBの関数眺めてりゃ小学校6年生でも思いつく。
演算の誤差の問題を除けばね。
マジで聞いてるなら、絶望的にプログラミングのセンスがない。
プログラミングなんて止めとけ。
0098デフォルトの名無しさんNGNG
ここはVB6しかできない負け犬の集まりですか?
0099デフォルトの名無しさんNGNG
報知新聞
0100デフォルトの名無しさんNGNG
レコードセットで
recordcountプロパティが-1になるのはなぜ?
aspの中ではADOが使えないのか?
(データは必ずあるのに)
0101デフォルトの名無しさんNGNG
>>98
なんでVBしか使えないと思ったんだい?
0102デフォルトの名無しさんNGNG
>>101
電波を受信できるタイプなんだろ。
0103デフォルトの名無しさんNGNG
>>100
http://support.microsoft.com/default.aspx?scid=kb;JA;194973
とか読んで、あとはぐぐって。

必要ならSQLの集計関数使うといいと思う。
0104デフォルトの名無しさんNGNG
釣られちゃいましたね
0105デフォルトの名無しさんNGNG
>>103
ありがとう
0106デフォルトの名無しさんNGNG
フォルダオプション>ファイルの種類>登録されているファイルの一覧
のようなリストを扱いたいのですが
どのコントロールを使用すればいいのでしょうか
ListViewだと何か違うような
010787NGNG
>>93
仰せの通り、コントロール配列にて対処することにしました。
どうも有難うございました。
0108デフォルトの名無しさんNGNG
Commandを押すとa,b,c,d,e,f,gという7つのアルファベットをランダムで
Labelに表示させたいのですが、どのように書いたらよいのでしょうか?
どなたかご指南していただけると幸いです。
0109デフォルトの名無しさんNGNG
>>108
アルファベットを配列に入れる→Rnd関数で添字を生成。
0110デフォルトの名無しさんNGNG
>>108
また、学校の課題ですか?
そろそろ自分で考えましょう。
0111108NGNG
いや、自分で必要になったので組もうと思ったんですが
最後にBasicをやってから6年以上経っており
6年前もそれほど知識を修得したわけじゃないので全く分からずです・・・。
どなたか丸々ソースを書いてくれると助かるのですがw
0112109NGNG
>>111
それは甘え過ぎでないかと。
ここがわかりやすいから、復習してみれ。
ttp://www.g.dendai.ac.jp/lecture/vbasic/index.html
0113デフォルトの名無しさんNGNG
(;゚д゚) Rndと配列でググれよ・・・
0114デフォルトの名無しさんNGNG
>>111

asc(chr(a)に0〜6を足す)

文字コードマジック。
0115デフォルトの名無しさんNGNG
chr("a")だな。
0116108NGNG
ありがとうございます。
現在C++の課題をやっていてそっちの方に手一杯だったのでw

自分で探してみます。
0117デフォルトの名無しさんNGNG
答え:
コマンドボタンのイベントハンドらに次のコードを書く。

Label1.Caption = Choose(Rnd * 7 + 1, "a", "b", .... ,"g")
0118デフォルトの名無しさんNGNG
>>106
自己解決しました
0119デフォルトの名無しさんNGNG
IEをHTMLファイルのプレビューに使おうと思い、IEでメニューバー以外の
バーを非表示にして起動し、HTMLファイルを表示させたいと思っています。

Microsoft Internet Controlsを参照設定し、

Dim IE As InternetExplorer

 Set IE = New InternetExplorer

With IE
.AddressBar = False
.StatusBar = False
.MenuBar = True
.ToolBar = 1
.Navigate http://www.hogehoge.local
.Visible = True
End With

と書いて実行すると、メニューバー以外にもツールバーの「標準のボタン」
と、Googleツールバーが表示されてしまいます。

そこで、ToolBarプロパティを0に設定したら、ツールバーは非表示に出来た
のですが、何故かメニューバーも非表示になってしまいました。

メニューバーを表示させた状態で、ツールバーを非表示にするには、ツール
バーのプロパティに何を設定すればいいのでしょう?

012078NGNG
a,bを求めるとレスしてましたが、違ってました。
a,bを -10〜10の間で、0.1ずつ変化させて(For a = -10 To 10 Step 0.1) 、
d^2を出すという物です。
それで、出した物をファイル出力させるという感じでした。
で、For a = -10 To 10 Step 0.1 を
プログラムのどこに組み込めばいいかよく分からないです。
ヒントをください。
お願いします。
0121デフォルトの名無しさんNGNG
>>120
他の部分はわかっているのか?
わかってないだろ。そんな奴にどこに組み込むかなんて
教えて理解できるとは思えないんだが。
012278NGNG
>>121
他の部分というか、a,bの値がそれぞれ限定されてれば、
分かるんですが、a,bを変化させていくとなると、
分からないんです。
0123デフォルトの名無しさんNGNG
>>122
わかっているとはとても思えないんだが。
わかっているつもりなんじゃないの?

ttp://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/vb_k03.htm
ここでも読んでみたら?
012478NGNG
>>123
ありがとうございます。
0125109NGNG
>>120
前に書いてたd^2 = Σ(i=1 10) {f(a,b,xi) - yi / yi}^2(最小二乗法)の
式を見て、a,bだけの要素で解けると思いますか? xiとyiはまったく与え
られていないのに、a,bの値を変化させるだけでd^2をプログラムが勝手
に求めてくれると?

仮にa,bをそれぞれ+1と置いて、手計算してみた?
012678NGNG
>>125 
xiとyi(10個ずつあります)は分かってますよ。
あと、a,bをそれぞれ+2と置いて、手計算しましたし、
プログラムも組めました。
0127109NGNG
>>126
ああ、最初の発言に書いてたね。すまん。
じゃ、組んだプログラムを晒してみたら?
012878NGNG
Private Sub Command1_ Click()
Dim x (10) As Double
Dim y (10) As Double
x(1) = -5.0 : y(1) = 1.0

    省略

x(10) = 4.0 : y(10) = 12.0
Wa = 0
For i = 1 To 10
d = {(2*n + 2 - m) / m }^2
Wa = Wa + d
n = xi
m = yi
Next i
Picture 1. Print Wa
End Sub

a,b がそれぞれ2の場合のやつです。
0129デフォルトの名無しさんNGNG
TextBoxに数値しか入力できないようにしたいのですが、どうすればいいでしょうか?

あ、でも ショートカットキーや カーソル、タブキーなどは 有効にしたいのです。
0130デフォルトの名無しさんNGNG
KEYDOWNイベントで該当コントロールでは無効にしたいキーコードを
クリアするようにしたらいいんじゃないの?

後はそういうコントロールを買うかだな。
0131デフォルトの名無しさんNGNG
>>130
Ctrl+Vやマウスでのペーストが駄目じゃないか?
0132デフォルトの名無しさんNGNG
>>131
Clipboard.GetText で判定すればオケ。
0133デフォルトの名無しさんNGNG
MouseDown や MouseUp をコンテナ側で先に処理する方法はありませんか?
キーボード処理の KeyPreview = True みたいな感じで。
0134デフォルトの名無しさんNGNG
>>133
ない。
0135109NGNG
>>128
xi,yiなんかの変化しない値は定数としてプロシージャ外に置くべき。
a,bを等差数列として扱えるなら、現在のループの外側にもうひとつルー
プを作って、開始値に増分値を加算していくように操作すれば?

もしくはa,bを二次元配列として、Form_Load時にあらかじめ読み込み。
外側ループで添字を指定してから、内側ループで計算とか。
0136デフォルトの名無しさんNGNG
>>131-132
おいらはKeyPressイベントとValidateイベントでチェック掛ける。
0137デフォルトの名無しさんNGNG
>>133
メッセージフック
0138133NGNG
>>134
VBの文法としては無いから、
>>137
でやれと言うことですね。

ありがとうございました。
0139デフォルトの名無しさんNGNG
ある Object 変数が、特定のクラスまたはそのサブクラスのインスタンスかを判断するときにはどう書けばよいでしょうか?
0140デフォルトの名無しさんNGNG
>>97
はぁ?
0141デフォルトの名無しさんNGNG
>>139
if typename(obj) = "clsHoge" then
0142139NGNG
>>141
早速の回答ありがとうございます。
obj がclsHogeの時は確かにこれでOKなのですが、
clsHogeのサブクラスだったときも真にしたいのです。
0143デフォルトの名無しさんNGNG
If Typeof obj Is clsHoge Then
0144139NGNG
>>143
Typeof 〜 Is でしたか。
コレ、ヘルプに載ってないんですね。
ありがとうございました <(_ _)>
0145デフォルトの名無しさんNGNG
>>144
「If...Then...Else ステートメント」のヘルプには載っていたりして。
0146デフォルトの名無しさんNGNG
コマンドボタンを押すと、違うフォームに遷移する
VBの関数ってありますか?

ACCESSなら、docmd.openform"フォーム名"ですけど。
簡単なのはわかってるんですが、どうしても書籍とかで
見つからないです。 簡単すぎて載っていないのでしょうか?
お願い致します
0147デフォルトの名無しさんNGNG
Dim WS As Workspace
Dim DB As Database
Dim RS As Recordset

Private Sub Form_Load()

Set WS = DBEngine.Workspaces(0)
Set DB = WS.OpenDatabase("データベース名") '使用するデータベースファイル
Set RS = DB.OpenRecordset("テーブル名", dbOpenTable) '使用するテーブル

RS.MoveFirst '最初のレコードへ移動
DBGrid1.DataSource = RS 

End Sub

Accessで開いたテーブルをDBGridに表示させたいのですが表示できません。
助けて・・・
0148デフォルトの名無しさんNGNG
>>146
Showメソッドか SetFocusメソッドのこと?
0149デフォルトの名無しさんNGNG
VBでイベント発生時、テキストボックスを作成する事は可能でしょうか。
非表示→表示でもいいのですが、項目がどれだけ増えていくかわからないので
テキストボックスの名前をtextbox01から増やしてその都度作成していきたいんです。

環境はVB6です。
0150デフォルトの名無しさんNGNG
>>149
set objTextBox = New TextBox でいけるんとちゃう?
0151デフォルトの名無しさんNGNG
>>149
それよりその糞みたいな仕様を考え直せ。
0152デフォルトの名無しさんNGNG
>>151
やだよ。クズ
0153デフォルトの名無しさんNGNG
> 項目がどれだけ増えていくかわからないので

馬鹿丸出し。FORMからはみ出すぐらい増えるのか?
糞みたいな仕様を見直せよ。それかプログラマやめろ。
0154デフォルトの名無しさんNGNG
>>150
ありがとうございます。できました。
>>151>>153
いや、確かにバカ丸出しですよね・・・
でも仕様に口出しはできないので会社を辞める方向で考えていきます。
はみ出さないようにスクロールさせる変更を進言するの面倒なのでそのまま作っておきます。
0155デフォルトの名無しさんNGNG
>>154
口出せよ。クソ仕様で困るのは使うユーザなんだよ。クソソフト撒き散らすな。
0156デフォルトの名無しさんNGNG
いくつ作られるかわからんならコントロール配列にすべし。Loadで作成。
しかし糞仕様とか叫んでるやつはなんであんなに興奮してるんだ?
0157デフォルトの名無しさんNGNG
pictureboxを別formに渡したいときには、どのような処理をしたらいいですか?
グローバル変数でデータ型PictureBoxの変数を宣言して、そこに代入しようと思
っていたのですが、その変数への渡し方がよくわからないので教えてください。
0158デフォルトの名無しさんNGNG
pictureboxはデフォでグローバル。なので
form1.pictureboxなどとすればどこからでも参照できる。
0159デフォルトの名無しさんNGNG
ocxの終了処理ってどういう風にやればいいんでしょうか?

vbで作ったocxをC#に持ってった所、終了際に毎回エラーメッセージを吐きます。
使ってる変数にはNothing入れてるんですが・・・・
0160デフォルトの名無しさんNGNG
Nothing 入れるのは参照アドレスをクリアしてるだけ。
実態はメモリに残っているのでエラーを吐く。
0161デフォルトの名無しさんNGNG
>>159
エラーメッセージも書かない無神経さから治すべきだ
0162デフォルトの名無しさんNGNG
>>161
それぐらい予測つかない?素人は黙っててね。
0163デフォルトの名無しさんNGNG
>>162
フププ゚。
じゃあ出たメッセージを言ってみろよ。
0164デフォルトの名無しさんNGNG
>>163
シラネーヨ
0165デフォルトの名無しさんNGNG
>>158
サンクス。やってみます。
0166デフォルトの名無しさんNGNG
Formが Loadされたかどうかを 調べるには どうしたらいいのでしょうか?
0167デフォルトの名無しさんNGNG
166
isLoad(Form)==True
0168デフォルトの名無しさんNGNG
>166
IsLoaded
0169デフォルトの名無しさんNGNG
>>166
Function IsLoaded(FormName As String) As Boolean
Dim Form As Form
For Each Form In Forms
If Form.Name = FormName Then
IsLoaded = True
Exit Function
End If
Next
IsLoaded = False
End Function
0170デフォルトの名無しさんNGNG
>>169
デザインビュー
0171デフォルトの名無しさんNGNG
VB6.0 のソースコードを難読化するツールがあれば教えて下さい。
0172デフォルトの名無しさんNGNG
VB6で 作成した EXEをインストーラー形式にするには
どうすれば いいのでしょうか?
0173デフォルトの名無しさんNGNG
>>171のソースならそのままでも難読(ry
0174デフォルトの名無しさんNGNG
>>172
DOBON.NET
http://dobon.net/
VBに適したインストーラーを探そう
http://dobon.net/vb/installer/index.html
0175デフォルトの名無しさんNGNG
>>174
172じゃないけどそこ知らなかった。
感謝。
0176デフォルトの名無しさんNGNG
「セットアップまたはトランスレータライブラリを読み込めません。」

VBのセットアップでインストーラーを作れたのですが、
それをインストールしようとすると 上記のエラーが出ます。

どうしたらいいのでしょうか?
0177デフォルトの名無しさんNGNG
>>176
ユーザ名が全角ってなオチ?
0178デフォルトの名無しさんNGNG
>>176
ほれ。
http://www.google.co.jp/search?hl=ja&ie=UTF-8&q=%E3%83%88%E3%83%A9%E3%83%B3%E3%82%B9%E3%83%AC%E3%83%BC%E3%82%BF%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A9%E3%83%AA%E3%82%92%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%82%81%E3%81%BE%E3%81%9B%E3%82%93&lr=
0179デフォルトの名無しさんNGNG
>>178
それは 質問する前に見たんだけど さっぱしわかんないから質問した。

OSによって 入れるソフトが違うのか?
なんかたくさんあって、どれをDLしたらいいのか さっぱしわからん。

0180デフォルトの名無しさんNGNG
>>179
じゃ、あきらめろ。
0181デフォルトの名無しさんNGNG
>>180
冷たい言い方だな。

>>179
残念だが、あきらめろ。
0182デフォルトの名無しさんNGNG
>>180-181
そう言うなよ。

>>179
オレ達はぐぐったページより親切に教えられない。
だから理解できるようがんばれ。
0183デフォルトの名無しさんNGNG
>182
言い方がひどすぎるな。

>179
あきらめなくていいから、氏ね。
0184デフォルトの名無しさんNGNG
>>175
おいらはVisual Studio Installerを使ってる。
msi形式になるのが(・∀・)イイ!

微妙に使い難いけどな(´・ω・`)
>>176のような奴が使いこなすのは無理ぽ。
0185デフォルトの名無しさんNGNG
VBでファイルアップローダーを作っているのですが
URLでファイルをアップロードしたいのです。
掲示板の書き込みはURLで行えますよね?.....cgi?id=xxxcomments=xxx
のようにパラメータをcgiの後ろに持たせると。
しかしファイルアップロードはさっぱりなのです。掲示板と
同じようにパラメータを持たせURLからファイルをアップロード
するにはどうすればよいのでしょう。よろしくお願いします。
0186デフォルトの名無しさんNGNG
>>185
色々勘違いしていると思う。
ファイルアップロードプログラムを組みたいなら、
TCP/IP HTMLプロトコル 辺りを勉強した方が後々面倒が無くて良い。
0187デフォルトの名無しさんNGNG
>>185
あのさあ、「アップロード」って、そのアップロードする相手は何なんだよ。
ひょっとしてサーバーつうのは何処の馬の骨からのどんな糞みたいなファイルでも
受け付けるとでも思ってんの?

FTPのこと言ってるなら基本的に他人のサーバーに勝手にファイルをうぷなんてできねえよ。
こんなの小学生でもちょっと考えれば分かることだと思うけど。

サーバ上のいわゆる「アプロダ」に対してファイルアップデートしたいなら、
そのCGIのクエリの仕様がわからなきゃどうにもならないわけで、
そんなもの具体的なCGIの名前も挙げずに聞いたって誰もこたえられない。

ていうか、どっちにしろ激しく板違い。

ていうか>>186も勘違いしてない?
0188デフォルトの名無しさんNGNG
なんか興奮しやすい香具師が混じってるなぁ。梅雨厨か?
0189デフォルトの名無しさんNGNG
VBに戻りたいような・・


戻りたくないような・・・
0190デフォルトの名無しさんNGNG
友達のキーボードが壊れてしまったのでVBで
あ〜ん、が〜ぽのボタンを配置して押すとテキストボックスに入力されていき
コピーして貼り付けるのが楽になるプログラムを作ったのですが
テキストボックスに入力した言葉を変換することができません。
どうすれば変換ができるようになるでしょうか?
0191デフォルトの名無しさんNGNG
>>190
IME関連ので作れるが、キーボード買ってきたほうがラクだよ
0192190NGNG
それが友達のPCはノートじゃないんですが本体、モニタ、キーボード一体になってまして・・・
とりあえず修理なり新しいのを買うなりするまでの繋ぎとして作ったんです。
だからそんな機能までつける必要はないのですが、ちょっといいとこみせたいなと思っちゃいまして。
VBを初めて(プログラム自体)二ヶ月程度しかたっていないのですが、
IME関連の事はその程度でも扱えるものでしょうか?
0193190NGNG
それが友達のPCはノートじゃないんですが本体、モニタ、キーボード一体になってまして・・・
とりあえず修理なり新しいのを買うなりするまでの繋ぎとして作ったんです。
だからそんな機能までつける必要はないのですが、ちょっといいとこみせたいなと思っちゃいまして。
VBを初めて(プログラム自体)二ヶ月程度しかたっていないのですが、
IME関連の事はその程度でも扱えるものでしょうか?
0194デフォルトの名無しさんNGNG
>>193
あなたのレベルなんて知ったことではないので、やってみることだ。
IME APIとかIMM APIとかで検索するといい
0195デフォルトの名無しさんNGNG
一体型でもノートでも、
安物のUSBのキーボードでも買ってきて繋げば、
キーボード二つになるけど動くよ。
0196190NGNG
あ、そういえばそうですね・・・
USBがありましたか
でもとりあえず変換できるようにしてみたいです。
検索してみても全くわからなかったのですががんばります。
とりあえずVBのコードをいじるだけでできるのですよね?
他に何か必要な物があったりしますか?
0197デフォルトの名無しさんNGNG
検索能力?
0198デフォルトの名無しさんNGNG
test
0199デフォルトの名無しさんNGNG
>>193
わかった 昔の 8ビット機の PC−8001みたいな
イメージだな?(w
0200デフォルトの名無しさんNGNG
フレームで そのフレームのイネーブルにあわせて、
そのフレームに貼りつけてあるコントロールのイネーブルを
フレームのイネーブルと同じにするには、どうしたらいいのでしょうか?
フレームがたくさんあるので、みんな共通して使えるように
したいんです。
0201デフォルトの名無しさんNGNG
>>200
それらのフレームを大きいフレームに入れろ。
0202デフォルトの名無しさんNGNG
VisualBasic6.0 SP4
サードパーティツール Grape City (旧文化オリエント)Spread Ocx 3.0J

上記のスプレッドシートでセルの結合(っぽくみえる)を実現したことのある方、
アドバイスをいただけると助かります。

スプレッドの6.0以降はセル結合機能があるのですが、3.0での開発と制限がついており、
なんとかそれっぽく見せようとしていますがなかなかいい方法がうかびません。
やりたいことは3列10行のシートで一番下の行だけ1列目と2列目を結合してテキストを入れたいのです。
0203850NGNG
>>885さん

 レス遅れてすいません。

 その方法は試していた様でした。
 もう一度やったけど、だめだったとの事でした。
OSは日本語XPです。

 プロパティウインドウのCaptionやTextなどにはちゃんと表示されるけど、コントロールには化けて表示されるらしいです。
0204デフォルトの名無しさんNGNG
まだやってたのか。

プロパティウィンドウに直接書き込むのをやめて、リソースとして持った方がいいんじゃないかなぁ。リソースだとUNICODEで保存されるし。

取り敢えずOSがXPなら、[コントロールパネル]→[地域と言語のオプション]→[詳細設定][Unicode対応でないプログラムの言語]を「中国語(台湾)」で再起動する。

Visual Basicを起動して、フォームにラベル2個貼り付けて、次のコードを書く。

Private Sub Form_Load()
With Label1
.Caption = LoadResString(101)
With .Font
.Charset = 136
.Name = "NMingLi"
End With
End With

With Label2
.Caption = LoadResString(102)
With .Font
.Charset = 136
.Name = "MS P Gothic"
End With
End With
End Sub

んで、リソースエディタ立ち上げて、

101…台湾語でhogehoge
102…日本語でhogehoge

って書いて保存して実行してみそ。
0205デフォルトの名無しさんNGNG
>>202
オーナードローでそれっぽく見せる。

最下行だけなら問題ないと思うけど、
スクロールとかの場合に再描画できないときがあったりなかったりした気がする。
0206デフォルトの名無しさんNGNG
VB6で使えるプログラムアイコンって32×32ドット、256色までですか?
それともOS依存ですか?
NT4だと48ドットやフルカラーはエラーが出ました。
0207デフォルトの名無しさんNGNG
現在、VBでVCのReleaseから作成した、.dllを読み込み実行して、
テキストファイルを出力しているのですが、設定でvbのexeを指定しているので、
その度に出力先を変更しています。
できたら、フォルダを変えても現在のフォルダ上に出したいのです。
何か良い方法はありませんでしょうか?
0208デフォルトの名無しさんNGNG
>>187
板違いすいません。どこが適切化おしえていただけないでしょうか?
自分の行ってるのはファイルアップローダーにURLでアップロードする方法です。
たとえばhttp://49uper.com/up2/index.php?mode=listなどですかね・・・
0209デフォルトの名無しさんNGNG
>>208
そのURLにあるアップローダへVBから手動/自動的にデータをUPしたい、と言うことか?
0210デフォルトの名無しさんNGNG
>>207
親切なエスパーさん通訳キボンヌ
0211デフォルトの名無しさんNGNG
>>210
http://pc5.2ch.net/test/read.cgi/tech/1087049069/878-
0212210NGNG
>>211
ありがとうございます。
0213デフォルトの名無しさんNGNG
VBで、wordやexcelを操作できるのはよく本に載っていますが
powerpinterを操作することはできるでしょうか?
(あるボタンを押したらこのテンポで表示するとか)
よろしくお願いいたします。
0214デフォルトの名無しさんNGNG
プログラミングを始めたいと思ってる右も左もわからない初心者なんですが、
VisualBasicって買わないといけないんですか?
それとも、フリーでネットからダウンロードできるんですか?

・・・なんか場違いっぽいな・・・
スレ違いな質問でしたらすみません・・・
0215デフォルトの名無しさんNGNG
>>214
MicrosoftからVB5 CCEがダウンロードできる
0216VB5CCENGNG
>>214
"Visual Basic"で検索したか?
0217デフォルトの名無しさんNGNG
>>214
明日(6/25)、学生証を持ってPCソフトショップへ逝ってきなさい

4830円で買えるVisual Studio.NET theSpoke 2003
http://pc5.2ch.net/test/read.cgi/tech/1087654860/
0218鳥取の風NGNG
VB6.0でMSCommを使用し,RS232C経由でデータを受信するプログラムを作成
しておりますが,3バイトのデータ(12,AA,FF等)を受信し,その内容を
テキストボックスに 12AAFF と表示させるにはどのようにしたらよいでしょうか。

1バイトの時は,バイト型の動的配列を作り

Dim Buffer() as byte
Buffer = MSComm1.Input
Text1.text = Hex(Buffer(0))

でできるんですが・・2バイト以上の時はどのようにするのかが分かりません。
お力をおかし頂けませんでしょうか。よろしくおねがいいたします。
0219デフォルトの名無しさんNGNG
>>218
Text1.text = Hex(Buffer(0)) & Hex(Buffer(1)) & Hex(Buffer(2))

ループまわしてもいいが。
0220鳥取の風NGNG
>>219
できました。ありがとうございました。
0221デフォルトの名無しさんNGNG
csvのファイルをvbで読み込みたいんですけど、参考になるサイトとかありますか?
検索したんですけど4000件とか出てきて…
お願いします。
0222デフォルトの名無しさんNGNG
>>221
4000件もヒットしたなら片っ端から眺めて行って理解出来る
ページを探せばいいのにと思うんだけどな(´・ω・`)

5件もヒットせずに全部見ても収穫なしで終わってしまう事
に比べれば遥かにマシだと思うけど(´・ω・`)
0223デフォルトの名無しさんNGNG
>>221
Line Input # と Split関数 を調べれば?
0224デフォルトの名無しさんNGNG
フレームに貼りつけてあるコントロールが、どれのフレームなのか 調べるには
どうしたらいいのでしょうか?

つまり、コントロールから それが どのフレームに貼りついてるのか調べたい。

逆に、フレームにどのコントロールがあるか 調べられないでしょうか?
0225デフォルトの名無しさんNGNG
parentプロパティで出来たと思う。
0226デフォルトの名無しさんNGNG
Containerでいけるのかな?
でもFrameのCaptionが すべて "" の場合は、見分けがつかないかな?
0227デフォルトの名無しさんNGNG
parentプロパティでわかるのってFormだろ?
0228デフォルトの名無しさんNGNG
>>225
Name でOK

Frame が Controls 持って無いのナンデダロ?
.Net は持ってる。
Form.Controls 列挙して、.Container チェックしないとダメだよね。

0229228NGNG
>>226
だった、ゴメソ
0230SMINGNG
フォームにテキストボックス(Text1)を貼り付けて、値を取得するときは
Dim a as string
a=Text1.Text
のような形で取得しますよね。
この.Textの部分を変数でおきかえることはできるのでしょうか?
たとえば
Dim a as string
Dim b as string
b=".Text"
a=Text1 & b
のような形(これではエラーがでました)取得できるのでしょうか?
0231デフォルトの名無しさんNGNG
>>230
CallByName
あとそのエラーの原因は後学のために別途考えれ
0232デフォルトの名無しさんNGNG
if b=".Text" then a=Text1.Text
としてやる。
0233デフォルトの名無しさんNGNG
>>228
>Name でOK

これってどうすればいいのでしょうか?
0234SMINGNG
>>231
>>232
ありがとうございます。
早速試してみたいと思います。
0235228NGNG
>>233

コントロールの親フレーム
Command1.Container.Name

フレームの子コントロール
Function Controls(Frame As Frame) As Collection
Dim Control As Control

Set Controls = New Collection
For Each Control In Frame.Parent
If Control.Container Is Frame Then
Controls.Add Control
End If
Next
End Function

使い方
Dim Control As Control
For Each Control In Controls(Form1.Frame1)
Debug.Print Control.Name
Next
0236デフォルトの名無しさんNGNG
"オートメーションエラーです。
アプリケーションがinput-synchronousコールをディスパッチしているので、
outgoingコールは呼び出せません"

って、エラーが出たんですけど、どういうことか
わかる方、教えてください。
0237デフォルトの名無しさんNGNG
>>235
サンクス
Container.Name
っていう意味だったのか。わかったよ。
0238デフォルトの名無しさんNGNG
>>230
ふつうにコントロール配列使うほうがいいと思うけど。
0239236NGNG
だれか、>>236 のエラーメッセージについて
教えてエロい人!
0240デフォルトの名無しさんNGNG
>>239
アプリケーションがinput-synchronousコールをディスパッチしちゃってるから
outgoingコールは呼び出せねぇよってことじゃね?
0241239NGNG
>>240
レスありがと。
教えてチャンでごめん。

input-synchronousコール、outgoingコール
って、何なんですか?
0242デフォルトの名無しさんNGNG
>>241
Shell32.dll の必殺技。
Win95 や WinNT の Shell32.dll だと、たまに発動を失敗する。
0243デフォルトの名無しさんNGNG
>>205
遅くなりましたが、貴重な意見ありがとうございました。
0244デフォルトの名無しさんNGNG
>>241
シラネーヨ
0245デフォルトの名無しさんNGNG
>>241
ほれ
http://www.google.co.jp/search?q=cache:jjHEdwiOPAoJ:homepage3.nifty.com/nao-chan/q%26a.htm+input-synchronous&hl=ja&lr=lang_ja
0246239NGNG
>>242
なるほど。

>>245
ありがと。
これはおれもググッてみつけてますた。

NTで、3ヶ月ぐらい連続稼動させてるマシンで
このメッセージとワトンソ博士が発生したんすよ。
原因調査しないといけないのですが、
ワカランのですよ…。
>Win95 や WinNT の Shell32.dll だと、たまに発動を失敗する。
これで、納得してくれないかなぁ…。



0247デフォルトの名無しさんNGNG
>>246
>>245に原因と解決方法が書いてるような気がするが・・・まあ、気のせいかな。
0248デフォルトの名無しさんNGNG
Formに貼り付けたコントロールのEnabledをfalseにすると値が薄い字で表示
されるようになってしまうんですが、これを回避する方法ありますか?ACCES
Sだとlockedプロパティで回避できるのですがVBで同じことをしようとすると
プロパティエラーになってしまうので困っています。初歩すぎるのかWEBでも解
決方法をみつけられなかったので知っている方がいたら教えてください。
0249239NGNG
>>247
たしかに。

"Microsoft Windows のシステムファイルの一つに Shell32.dll というものがあり、そのバージョンに依存する問題です。"

って、ところですよね?
解決方法はバージョンアップでいいのかも
しれないんですが、発生したモジュールが
せいれつ君じゃないので原因が…。

レスくれた皆さん、ありがとう。
ここからは自分でナントカしてみます。
0250デフォルトの名無しさんNGNG
>>248
フレームに貼りつけて、そのフレームをイネーブルにする。
0251デフォルトの名無しさんNGNG
App.EXENameの値は、どこを変えると変わるの?
EXEの名前だと言うのはわかるのだけど、
VisualStudioの中で実行した場合は、
プロジェクトの名前になってしまうの?

0252デフォルトの名無しさんNGNG
プロジェクトのファイル名になってしまうのかなぁ?
回避策はあるのでしょうか?
0253デフォルトの名無しさんNGNG
何か問題でも?
0254デフォルトの名無しさんNGNG
>> 253
ファイル名のプリフィックスにprjをつけてしまうと、
EXE名と異なってしまうものですから・・・
0255デフォルトの名無しさんNGNG
何か問題でも?
0256デフォルトの名無しさんNGNG
>>254
.Exe の作成で名前指定できなかった?
0257デフォルトの名無しさんNGNG
>>254
んなもんつける方がおかしい
0258デフォルトの名無しさんNGNG
ユーザーコントロールの Initializeイベントが、プログラムの終了時にも発生してる気がするんですが、これって仕様ですか?
0259258NGNG
>>258
VB6.0はフツーだ・・・。
VB5.0の問題かぁ
それにしたって、Terminate の後に発生する Initialize ってどうよ。
(T^T)o
0260デフォルトの名無しさんNGNG
VBでiniファイルをつくってそこへ読み書きをしたいです。

なにかいいサイトはありませんか?
0261デフォルトの名無しさんNGNG
>>260
いいサイトがありますよ。内緒だけど、お教えします。
http://www.google.co.jp/
0262221NGNG
>>223
返事おくれてすいません

ありがとうございます、今から調べてみます
0263デフォルトの名無しさんNGNG
>>261
いいサイトだな!
0264デフォルトの名無しさんNGNG
VBでListBox使っているんですけど、
最大化したときやウインドウを大きくしたときなどに
ListBoxnoサイズも変更したいんですけど、どうやればいいんですけ?
move何とかって言うのを使うみたいな所までは調べたのですが。
VisualBasic6.0でWindowsXPです
よろしくお願いします
0265デフォルトの名無しさんNGNG
>>264
フォームのサイズが変更されたときに
リストボックスの幅と高さを変更するだけじゃないか
0266デフォルトの名無しさんNGNG
>>258-259
ダメな人ほど過剰にすぐにMSに責任転嫁したがる。
VB5で何度もコントロール作っているが、そんな現象に遭遇したことはない。

コントロールを使用するアプリが、いわゆる「暗黙の変数宣言」をする糞コードに
なっているだけの予感がして仕方がない。
0267デフォルトの名無しさんNGNG
>>264
あと、formのリサイズイベントも捕まえろ。
0268デフォルトの名無しさん NGNG
NBASICしか経験の無い超初心者です、
NBASICのメインルーチンに相当するプログラムはどのような形にするのでしょうか
また立ち上げ時に数値を初期設定しておきたいのですがどうしたらよいのでしょうか
くだらない質問で申し訳ありません、宜しくお願いします。

0269デフォルトの名無しさんNGNG
>>268
・メインルーチンに相当するプログラム
今のプログラミングスタイルではそんなものは無い

・立ち上げ時に数値を初期設定
Initializeイベント等で設定するが、そのまえに入門書を買ってきましょう
0270デフォルトの名無しさんNGNG
>>268
プロジェクトウィンドウのプロジェクトにマウスカーソルを合わせて、右クリックで「プロパティ」を開くと、
「スタートアップの設定」というのが在り、ここでメインとなる「フォーム」を決めます。
フォームの他にも「Sub Main」というのが在り、「標準モジュール」に書かれた「Main」というサブルーチンをメインにする事もできます。
まぁ、後はそこ等辺を適当に調べれば良いと思いますよ。
0271デフォルトの名無しさんNGNG
>>268
フォームがないプログラムを作るつもり?
数値の初期設定って代入すればいいだけじゃん。
もっと具体的に書かないと回答できないよ。
0272デフォルトの名無しさんNGNG
CGIに大量のクエリ(主に<select>)を送りたいのですが、
手入力だと面倒で、
htmlを自動生成する方法だとrefererが変わってしまうので別の問題が発生してしまうんですよ。

IEコンポーネントを操作して、
VBからHTMLの中のフォームを選択したり、書き込んだり出来ますか?
0273デフォルトの名無しさんNGNG
>>272
直接socketでやりとりすれば好き放題じゃん?
0274272NGNG
うう、めんどくさいのです。
できれば、ある中で一番簡単な方法でやりたかったもので。
http勉強してきます。
0275はちみつ六郎NGNG
テキストエディタを作っています。
テキストボックス(リッチテキストではなく普通の)で、
左半分の縦方向に選択したりというのはどうやるんでしょうか。
既存のエディタでたしか「短形選択」という名前の機能だったと思いますが…
0276デフォルトの名無しさんNGNG
新しい2ch語誕生の瞬間に立ち会えた記念かきこ
短形選択じゃなくて矩形選択だと思う。

矩形選択ってVBのテキストボックスでは無理じゃないかなあ。
すくなくとも標準の機能にはない。
0277デフォルトの名無しさんNGNG
>>275
俺もVB標準のテキストボックスでは無理と思う。
自作するしかない。
0278デフォルトの名無しさんNGNG
(・∀・)タンケイ!!
0279デフォルトの名無しさんNGNG
クケイなんだよね。俺も二十歳まで間違えてたなぁ。
0280デフォルトの名無しさんNGNG
>>279
俺は、ノリガタって読んでますた。。。orz
0281デフォルトの名無しさんNGNG
コナミ矩形波倶楽部
0282デフォルトの名無しさんNGNG
>>275
テキストボックスじゃ縦方向に反転させるのが無理。
内部処理もUnicodeだと不利。
二次元のバイト配列にシフトJISで格納するのかな。
すごい頭の体操になる。
ひととおりの機能がちゃんと作れたら一人前と言っていいかも。
0283デフォルトの名無しさんNGNG
split関数について質問です
3,2,1の文字列を切り出すとき
v=split("3,2,1",",")
v(0),v(1),v(2)で値が3,2,1と入るのですが
文字列が3,2だけのときてどうしてます?
,の数を調べる?エレガントな方法ないですかね
0284デフォルトの名無しさんNGNG
>>283
意味がわからない
が
Splitの返り値に、要素数を明示して宣言されていない動的配列を用意してあげれば自動的に要素が確保されるよ
0285デフォルトの名無しさんNGNG
3,2,1の場合ではsplit関数で
dim v as variant
v=split("3,2,1",":")
debug.print v(0)
debug.print v(1)
debug.print v(2)
はOKですが
3,2のデータだと
debug.print v(2)はエラーになるのでなんかいい方法がないかと。
セミコロンを数える関数を作ります、
0286デフォルトの名無しさんNGNG
>>285
横着者にPGとしての今日を生きる資格はない。
んーなもの普通MSDN眺めてりゃ(っていうか、一ヶ月もVBやってりゃ)
自ずと解決するでしょ。

ヒントは上方境界を英訳して短縮すると.....。
0287デフォルトの名無しさんNGNG
Uboundですね
さっきわかりました。
少し疲れてるので許してください(w
0288デフォルトの名無しさんNGNG
"短形選択"ってググると108件もヒットしてびっくり。
ひょっとして本当に短形選択って用語は存在するのか?
単に矩形選択のつもりで誤用されてるにしては多すぎる気がするんだけど。
0289デフォルトの名無しさんNGNG
108件ならそんなもんだろ。間違いだと思われ。
0290デフォルトの名無しさんNGNG
http://216.239.57.104/search?q=cache:4pFkMWBoe58J:pc3.2ch.net/software/kako/1000/10000/1000014866.html+%22%E7%9F%AD%E5%BD%A2%E9%81%B8%E6%8A%9E%2
0291デフォルトの名無しさんNGNG
>>290
3年程前に47氏がバカにされてますね。
http://pc3.2ch.net/software/kako/1000/10000/1000014866.html
0292はちみつ六郎NGNG
>>276-282
レスありがとうございます
矩形選択ですか…いやーはずかしいw

やはり実現するとなると難しいようですね…
同僚がPictureBoxで作るのはどうかと言ってました。
たしかにピクチャーなら矩形選択も思いのままでしょうが、
基本的な機能は網羅したんで今から作り直すとなるとかなりだるいです。。

>>288
あらためて「矩形選択」でぐぐってみるとしますw

0293デフォルトの名無しさんNGNG
ホットキープログラムの質問です。
DirectXを使ったフルスクリーンネットゲームで
先に実行してあるVBプログラムのホットキーを使いたいんですけど
なぜか使えません。普通の画面で使う分には何処からでもどのアプリ
からでもホットキーが有効になってるんですけど、フルクリーンゲーム
だけはどうにもなりません。Win98se,vb6.0です。よろよろ
0294デフォルトの名無しさんNGNG
どうもVBの配列は苦手だ。
添え字が1からはじまるらしいが、境界越えるアクセスも
エラーにならなかったり、Cと勝手が違う。
0295デフォルトの名無しさんNGNG
VBScriptの質問もここでいいですか?
0296デフォルトの名無しさんNGNG
>>295
とりあえず言ってみれば
0297デフォルトの名無しさんNGNG
プログラムを作ったんですが、「完全コンパイル後に開始」して、プログラムを終了。
VisualBasic6.0を終了しようとすると、

vb6.exe - アプリケーションエラー

0x0049949e の命令が 0x00000038 のメモリを参照しました。メモリが readになることはできませんでした。

って、エラーが必ず発生するようになってしまいました。
exeを作っても普通に動いてるんですけど、どうしてもわからないんです。
よろしくお願いします。

環境は、VB6+MDB(Access2000)+Spread6.0+ActiveThreeDPlus3.0です。
0298297NGNG
MDBはDataEnvironmentで接続しています。
0299デフォルトの名無しさんNGNG
OSから入れなおし
0300295NGNG
VBScriptに関する質問ですが、exeファイルを実行させるにはどうすればよいですか?
0301デフォルトの名無しさんNGNG
>>297
Win32API使ってる所か、自前のDLL使ってる所が怪しいね。
動的にメモリ確保してるところで範囲外にアクセスしたりすると、
終了時にそんなのが出る。
0302デフォルトの名無しさんNGNG
>>293
それはたぶんフルスクリーンにしているアプリケーションがホットキーをマスクしてるんだと思うんで、
そのアプリケーションが自分で作成したものじゃないなら諦めれ。
0303293NGNG
>302
がびーん!そうですか・・・
ハードウェアレベルで制御したらいけるんですかw
うーむ
0304297NGNG
>>301
自前のDLLはまだ作る技量がないんで(苦笑)
Win32APIですか。
頑張って探してみます。
ありがとうございました。 <(_ _)>
0305デフォルトの名無しさんNGNG
>>295
「VBScript アプリケーションの実行」でググれ、それぐらい。
0306デフォルトの名無しさんNGNG
>>294
ちょっとまて。

VBの配列って添え字は基本的には0からだろ?宣言時に
確保される配列の要素数は違うけどな。

Cの int hoge[5]; は、hoge[0]〜hoge[4]だけど、
VBの Dim hoge(5) As Integer は、hoge(0)〜hoge(5)になる。

あと、VBの場合は、Dim hogehoge( 5 To 10) As Longなんて
宣言も出来る。この場合は、hogehoge(5)〜hogehoge(10)になる。

ちなみにOption Base 1が宣言されている場合は、要素は1から始まる。
0307デフォルトの名無しさんNGNG
>>306
ども。

Dim hoge(5) As Long で宣言して
hoge(10) = 1000
なんてのも言語的にOKなんですかね?

ReDim とか Preserve とかあるけど、きちんと
使うべきなんでしょうか?
0308デフォルトの名無しさんNGNG
>>306
すんません。試したらエラーになりますた。
やっぱ明示的に拡張しないとダメみたいですね。
0309デフォルトの名無しさんNGNG
>>>307
てか、Cでもそんな事やってたのか?
0310デフォルトの名無しさんNGNG
テキストファイルに設定等々を記録して於いて
そこから読み込ませる、そこへ書き込ませるよ
うにしたいのですが、どうしたらいいのでしょうか?

だいたい10行ほど使いたいのですg
0311デフォルトの名無しさんNGNG
>>310
iniファイルを扱うAPI使うか、自分で作るかだ
0312デフォルトの名無しさんNGNG
>>299
市ね!
0313デフォルトの名無しさんNGNG
>>309
Cだと>>307のコードが動いてしまいそうなところが怖いよな。
0314297NGNG
>>301
見てみたんですけど、全くわからないです。。。
exeがきちんと動作してるんで、ほっといてもいいですか?
エラー個所の発見の仕方を教えてください。
お願いします。 <(_ _)>
0315デフォルトの名無しさんNGNG
横着者だからPGが必要なのさ。
いかに簡単に手抜きしてできるかがPGの基本だ。
0316デフォルトの名無しさんNGNG
IEのSubmitイベントをIE上で動作しているActiveXコントロール(VB)で
受け取ることはできるんでしょうか?
どなたか教えてください。お願いします。m(_ _)m
0317297NGNG
DataEnvironmentってややこしいですね。
ちょっといじったら、エラーがでなくなりました。
わけわからん。 OTZ
0318デフォルトの名無しさんNGNG
水金地火(ry の惑星モデルができねえよ〜〜
0319デフォルトの名無しさんNGNG
だめだ・・・・OTZ
開発関連全ファイルを別のPCに持っていって同じことをしたら
エラーが発生しました。。。
環境は同じなんですけど。(T▽T)
0320デフォルトの名無しさんNGNG
access2000を使っていて、コマンドボタンクリックのイベント中に
クエリで得たレコードをテーブルに追加したいのですが、いい方法がありますでしょうか?

テーブル1:項目1、項目2、項目3
クエリ:項目A、項目B
で、項目1にはVB上で特定の数値、項目2=項目A、項目3=項目Bに
という感じです。
0321花鳥NGNG
すいません。VB初心者ですが誰か教えて下さいm(_ _)m

★テキストボックスにフォーカスが移ったときに、
(そこへ既に入力されてる)文字列が選択状態に
したいのです。

簡単なんでしょうか・・・?

是非お願いします。
0322デフォルトの名無しさんNGNG
>>321

Private Sub Text1_GotFocus()

  With Me.Text1
    .SelStart = 0
    .SelLength = Len(.Text)
  End With

End Sub
0323258NGNG
>>266
VB5.0は、ユーザーコントロールを載せたフォームがデザインビューで、
開かれていると、プログラム終了時にユーザーコントロールの Initialize
が呼ばれる。
同じソースをVB6.0で試してもそうはならない。
これって、マイクロソフトも「どうよ」と思ったからだと思うのだが、どうよ?
0324デフォルトの名無しさんNGNG
>>323
さぁ?
0325デフォルトの名無しさんNGNG
>>320

.Fields(0).Valueとか使えないか?
0326297NGNG
Access2000でパスワード付のMDBを作って、Data Environmentで
接続しています。
固定だったら接続できるのですが、インストールディレクトリを
自由に変更しても大丈夫なように、プログラムで設定したいと
思っています。どのようにすればいいのでしょうか。
よろしくお願いします。 <(_ _)>
0327デフォルトの名無しさんNGNG
>>326
VB の App.Path に相当するものを探せ。
0328297NGNG
>>327
そんなこといわずに教えてくださいよ〜。(^▽^)/
0329デフォルトの名無しさんNGNG
>>328
キモイ
0330デフォルトの名無しさんNGNG
ていうか、ほとんど答えじゃん
0331デフォルトの名無しさんNGNG
>>326
で、
>環境は、VB6+MDB(Access2000)
なら、
App.Path が答えそのものだと思うんだが。
0332297NGNG
>>331
appは2重起動のチェックにもつかってるからわかるんですけど
Data Environmentの設定の仕方がわからないんですよ。
0333デフォルトの名無しさんNGNG
よろしくお願いします。
VB6ではじめてDDEを使ってみたのですが、テキストボックスなどのオブジェクトを使って
DDEのリンクを張る所まではわかりました。
しかし、テキストボックス等のオブジェクトを使わずにたとえば変数等をDDEでリンクさせる方法
がなんともわかりません。
簡単なサンプル等、無いでしょうか?
0334331NGNG
>>332
DataEnvironment1.Connection1.ConnectionString
は?
0335297NGNG
>>334
msgboxで値を表示して設定の仕方がわかりました。
ありがとうございました。
また、よろしくお願いします。 <(_ _)>
0336デフォルトの名無しさんNGNG
>>333
DDEはVB.NETからサポートされなくなります
今のうち、DDEは無かった事にしておくと幸せになれます
0337花鳥NGNG
>>322

ありがとうございましたm(_ _)m助かりました
0338333NGNG
>336
ご忠告ありがとうございます。.netの件は十分承知しています。
しかし、相手方がDDEでエクセル等にデータがジャンジャン取込めるコトを売りにしている
ソフトでして。
DDEは最近、そんな感じで冷遇されてて、どこもあまり取り上げず、いいサンプル等も
見つからない次第で。
0339デフォルトの名無しさんNGNG
.hWnd プロパティを持たないコントロール(例えばOLEコントロール等)
のウィンドウハンドルを取得するにはどうしたら良いでしょうか?
0340デフォルトの名無しさんNGNG
>>338
MS的には時代遅れなDDEじゃなくてCOM使えって事になってるしな。
0341デフォルトの名無しさんNGNG
すいません、テキストファイルを1行ずつ読んでテキストボックスにいれたいのですが
改行の時に、vbCrLfやchr$(13)&chr$(10)を使っても改行してくれません。
演算には & をつかっていて、改行されるべきところが ・・ と出て一行の文になってしまいます。。
0342デフォルトの名無しさんNGNG
自己解決しました。すいません
0343109NGNG
MultiLineプロパティを忘れるのは良くある話だ。
0344333NGNG
DDEで値を値を、テキストボックスとか使わず変数に取り込むキーワードとしてLink_Excute
とかたどりつきましたが、まだイマイチよくわかりません。

手順てきには・・・
1.リンクイニシャライズでDDEリンクを作る。
2.リンクエクスキュート イベントが発生したら、バッファを読みに行く。

こんな感じに見えるのですが、あっていますか?
経験のあるかた、どうかヒントをお願いします。
0345デフォルトの名無しさんNGNG
>>339
そのコントロールがウインドウを持っているとは限らない。
あきらめるか座標からウインドウハンドルを取得するAPIを使ってみるか。
0346339NGNG
>>345
Spyで見るとドキュメント読込み後にはウィンドウを持っているようです。

>座標からウインドウハンドルを取得するAPI
Spyが使っているのもこれでしょうか。
ウィンドウの親子関係を辿って行く方法はどうもうまく行きませんでしたので
これで試してみます。
0347デフォルトの名無しさんNGNG
質問させていただきます。

VB6.0から、リナックスに接続し、
シェルを実行したいのだが、
どうやればいいですか?

コードの提示か、
参考URLを提示していただけると助かります。

よろしくおながいいたします。
0348デフォルトの名無しさんNGNG
rfc854
0349デフォルトの名無しさんNGNG
>>344
おおむねそんな感じだとおもいます。

LinkExecuteは任意の文字列を送りつけてソース側で構文解析して使う。
たとえばExcelは[open("%1")]という文字列を受け取るとファイルを開いてくれる。
つまり変数の中身を文字列で受け渡すことになるな。
構文解析は全部自前でやる。
受け取る文字列を限定してしまえば、たとえば昔ながらの電文形式で何桁目は
何とか決めてしまえば解析は楽。

ソース側はForm1.LinkMode=1にして、デスティネーションは
Text1.LinkTopic = "ソースのApp.Title|ソースのForm1.LinkTopic"にしてから
vbLinkManualでLinkExecute "文字列"すればソースでLinkExecuteが発生するので
処理しろ。

あとはMSDNオンラインをDDEで検索すればいろいろ出てくる。
たとえばLinkExeucuteのエラー285は無視しなければならない。
ttp://support.microsoft.com/default.aspx?scid=kb;ja;408173

DDEはOLEの基礎技術になっている(んだよな?)ので、Longhorn化しても
しばらくはサポートされると思われ。
どこかにC#でゴリゴリ書いたDDEのサンプルがあった(見つからない)から
それをライブラリにすればVB.netからは使えるかもしれない。
0350デフォルトの名無しさんNGNG
>>347
あははは
0351デフォルトの名無しさんNGNG
>>347
http://forums.devshed.com/archive/t-83009
0352351NGNG
>>347
http://www.b21soft.co.jp/basp21/basp21psocket.html
0353デフォルトの名無しさんNGNG
>>351さま
いろいろありです。
0354デフォルトの名無しさんNGNG
こんにちは。formに10文字入力できるtextboxコントロールを貼り付けているの
ですが、実際には5文字分しか画面上では範囲が取れませんでした。そこでtext
boxをスクロールできるようにしたいと思うのですが、方法が見つかりませんで
した。何か方法をご存知の方がいたら是非教えてください。HScrollBarを使用
してみたのですが、Changeプロシージャにどういうコードを記述すればいいの
か悩みこんでしまいました。
0355デフォルトの名無しさんNGNG
>>354
TextBoxの ScrollBar = 1 (水平) じゃだめなの?
0356デフォルトの名無しさんNGNG
AccessやExcelでVBを使っていて思ったのですが
Excelのセルの文字列を比較する問いにcells().velueで比較するとエラーが発生し
cells().textでエラーがなくなりました。
Accessのフォーム上に配置されたテキストボックスの値(文字列)を使用するときには
textbox.textでやるとエラー、.valueで正常動作でした。

.Textと.Valueってどういう概念で取得してくるんでしょうか?
使い分けがよくわかりません。よろしくお願いします。
0357デフォルトの名無しさんNGNG
>>356
Textは表示形式による処理が済んだ値、Valueはもともとのセルの値じゃないのか?

で、元の話。エラーが発生したのは何番のエラー?どういうメッセージが出たの?
0358デフォルトの名無しさんNGNG
>>357
ありがとうございます。
例えばAccessだと.Value時に
「コントロールがフォーカスを取得していないときに
コントロールのプロパティまたはメソッドを参照することはできません。」
というようなメッセージが出ます。

おっしゃる通り、表示処理後とそこに格納された値、という意味であれば
このエラーメッセージも納得できました。
Excelでは実行エラー13で形式が違うとかで怒られたのですが、今試してみたら
どちらでも動作しました。セルに入っていたデータそのものに問題があったのかもしれません。
ありがとうございました。
0359デフォルトの名無しさんNGNG
ローンの返済回数の計算を

                    月返済額
          log{―――――――――――――――}
                月返済額−借入総額×利率
      返済回数=――――――――――――――――――――
                 log(1+利率)

の式を使ってマクロで計算しようと思っています。
今、月返済額=TextMonth・借入総額=TextPrincipal・利率=Textterestとあてて
Private Sub BtnCalculate_Click()
TextBox1.Text = Log(Val(TextMonth.Text) / (Val(TextMonth.Text) - CCur(TextPrincipal.Text) * Val(Textterest.Text) / 12)) / Log(1 + Val(Textterest.Text) / 12)
End Sub

というふうにしてみたのですが "実行時エラー'424'オブジェクトが必要です。"とでて
うまく動いてくれません。どのように書き直せば動きますでしょうか?
環境はOS XP, Excel 2003, Visual Basic 6.0,です
0360デフォルトの名無しさんNGNG
開いたファイルの任意のアドレスに入っている値を表示させるにはどうしたらいいんでしょうか?
0361デフォルトの名無しさんNGNG
>>359
そのままコピペしたらできました。Office2000環境ではありますが。
なのでBtnCalculateボタン、Textbox1、Textmonth、textprincipal、
textterest(?)のオブジェクト名が間違っていないかを確認したほうがいいと思います。

あと、Excel2003、VB6っていうのは?
VB6アプリからエクセルのフォームを読みに行ってるとかでしょうか?
だとしたらフォームが見えてないかもです。
0362デフォルトの名無しさんNGNG
>>360
binaryモードでファイルを開いてgetして表示する。
0363デフォルトの名無しさんNGNG
>>360
Excel?Access?バイナリファイルのアドレス?
0364デフォルトの名無しさんNGNG
>>363
書き込む場所がちがいますよ。↓へどうそ。
http://pc5.2ch.net/test/read.cgi/tech/1085915001/
0365デフォルトの名無しさんNGNG
 VB6を使って、テキストファイルのデータをとAccess2000の.mdbファイルに
変換するアプリを作ろうとしています。
 いろいろ本を読んで、まずは簡単な方法として「ADOデータコントロール」を
使ってデータベース内のレコードを表示するところまでたどり着けました。
 次に、テキストコントロール内のデータを新しいレコードとして登録したいの
ですが、その本やヘルプを読んでも「Data Environment」を使った方法しか載
ってないのです。
 「ADOデータコントロール」から簡単にレコードの登録はできないのでしょうか?
もし、不可能であれば全てを「Data Environment」を使ったアクセス方法に変更
するしか仕方無いのでしょうか?
(この方法ではオブジェクト変数とかいろいろ難しい様に感じるのです・・)

 よろしくお願いいたします。
0366デフォルトの名無しさんNGNG
>>359
log Ccur 関数がぁゃしぃ
0367デフォルトの名無しさんNGNG
ぬるぽ
0368デフォルトの名無しさんNGNG
ガッ
0369359NGNG
>>361
今確認してみましたがオブジェクト名はどうやら間違ってなかったみたいです。
説明が足りずすみません、エクセルのVBediterからVBをたちあげてマクロを作ろうと
思ってやってみました。なので、フォームを読みに行っているわけではないです・・・たぶん。
レスありがとうございました。

>>366
どうおかしいでしょうか?正直どこをどう直せばいいかさっぱりなんです。
最初の数式はあってると思うんですが・・・。
0370デフォルトの名無しさんNGNG
>>359
1箇所だけCCur関数使ってるのはなんで?
特に理由が無いならためしにVal関数に変えてみ?
0371デフォルトの名無しさんNGNG
>>359
一つ一つつぶしていこうよ。
TextBox1.Text=1
から始めて、どの関数、オブジェクトを追加したときに
エラーが発生するか調べる。
これは誰かに頼むんじゃなくて自分で調べるもんだぜ。
その上でヘルプを見ても理由がわからなければ
同じ現象が発生する最低限のコードを示して質問する。
これが普通のやり方なんだよ。
0372359NGNG
>>370
学校で配布されたテキストを元にいじりながらやっていたので
CCurのまま使っていました、変えてみます!

>>371
そうですよね、本当に教えて君ですみませんでした。
これからつぶしにかかってみます、その後いろいろ試してもわからなかったら
また質問させてもらってもいいでしょうか?
0373デフォルトの名無しさんNGNG
>>372
やることやってから書き込め。
0374デフォルトの名無しさんNGNG
             /ヽ       /ヽ
            / ヽ      / ヽ
  ______ /U ヽ___/  ヽ    結局、宿題なの…
  | ____ /   U    :::::::::::U:\
  | |359 名前 // ___   \  ::::::::::::::|
  | | ローンの|  |   |     U :::::::::::::|
  | |       |U |   |      ::::::U::::|
  | |       | ├―-┤ U.....:::::::::::::::::::/
  | |____ ヽ     .....:::::::::::::::::::::::<
  └___/ ̄ ̄      :::::::::::::::::::::::::|
  |\    |           :::::::::::::::::::::::|
  \ \  \___      ::::::
0375デフォルトの名無しさんNGNG
.NETスレにもSpoke厨が大量発生するんだろうな。(´・ω・`)
0376デフォルトの名無しさんNGNG
ていうか、VBに10底のlogってあったっけ?
確かe底のはずだから、底の変換もかます必要あると思うんだが。
0377デフォルトの名無しさんNGNG
>>376
底は(1+i/12)だから、Logの割り算になってるのでは?
0378デフォルトの名無しさんNGNG
初心者ですいません。初めてユーザーコントロールに挑戦して見ました。
といっても、テキストボックスが2つのってるだけのものです。
これらのコントロールがフォーム上に複数のっています。

教えて頂きたいのですが、このユーザーコントロール上のテキストボックス1に
数字が入力されると、同一コントロール上のテキストボックス2に進み
何も入力されていない場合には、
Returnキーが押されると、次のユーザーコントロールに進むようにしたいと思います。

この場合、コントロールに次の移動先を書くべきでしょうか?それともFormでコントロールすべきでしょうか?

分かりづらい説明で申し訳ありませんが、よろしくご教示ください。
0379デフォルトの名無しさんNGNG
>>378
ユーザコントロール内で処理するべき。
外部からの制御が必要ならコントロールにまとめる価値がない。
0380デフォルトの名無しさんNGNG
>>378
次のコントロールまでユーザーコントロールに書くと堅いコントロールになってしまうのでやめた方が良い。
「何も入力されていない場合にEnterキーが押された」条件でEventを発生させ、フォーム側で制御させた方が応用が利く。
0381378NGNG
ありがとうございます

この場合、飛び先もコントロールに書くべきなんでしょうか?

なんか上手い方法があるような気もするんですが・・・
0382381NGNG
>>380
あ、被った。すいません。ありがとうございます。ナルホド
0383デフォルトの名無しさんNGNG
>>378
リターンキーが押されたら、タブキーが押されたことにする。
0384デフォルトの名無しさんNGNG
VB6にて、
ネットワーク上の共有フォルダを、
ユーザーとパスワードを指定して、
エクスプローラーを起動したいのですが、
どうすれば良いのでしょうか?

よろしくお願いします。
0385デフォルトの名無しさんNGNG
http://homepage2.nifty.com/orangepekoe/ura/ura.htm

を見る限り、UID/PWDを指定しての共有アクセスはExplorer自身に備わっていない。
なので、アプリからNETコマンド(だっけ?)で共有にアクセスできる状態にした上で、
上記ページのオプションでExplorerを起動。
0386365NGNG
 >365ですが、どなたも御存じないでしょうか?
 2ch内なら、このスレッドと思ったのですが・・・
0387デフォルトの名無しさんNGNG
>>386
まず、質問内容が曖昧すぎ。
次に、ADOとかのサンプルを見たのかと。
あと、DBがらみでミドルウェアを使うなら、きちんと自分で理解してくれ。
0388デフォルトの名無しさんNGNG
>>386
お仕着せなADODCよりも、自分で最初から準備したほうがいいよ。
ttp://hp.vector.co.jp/authors/VA030421/prog201.htm
0389デフォルトの名無しさんNGNG
質問があります。
以下のようなソースで、
コンボボックスに文字を入力し、入力値を自コンボボックスのリストと比較して、
存在すればコンボボックスのインデックスに設定したいのですが、
Combo1_Change のあと Command1_Click を行うと、
リストインデックスが-1になってしまいます。
どのようにしたら書き換わるのでしょうか?
(XP + VB6.0sp5)

Private Sub Combo1_Change()
Dim i As Integer
Dim strTmp As String
strTmp = Me.Combo1.Text

For i = 0 To Me.Combo1.ListCount - 1
If strTmp = Me.Combo1.List(i) Then
Me.Combo1.ListIndex = i
Call MsgBox("現在のインデックス = " & CStr(Me.Combo1.ListIndex))
Exit Sub
End If
Next i
End Sub

Private Sub Command1_Click()
Call MsgBox("現在のインデックス = " & CStr(Me.Combo1.ListIndex))
End Sub
0390365NGNG
>388
 ありがとうございました。
 参考にさせていただきます。
0391デフォルトの名無しさんNGNG
C言語で、
main(int argc,char *argv[])
の「argc」でコマンドライン(パラメータ?)引数の個数が分かるじゃないですか。
ではVBではどうやって引数の数を取得すればいいのでしょうか。
教えてください。

これって難しい質問なのか、超初心者の質問なのかも定かです。
0392デフォルトの名無しさんNGNG
DirectInputを使ってキーボードの入力を簡単に取得することができたのですが
それとは反対にキーボードに出力するのはできるのでしょうか?
簡単に言えばソフトウェアキーボードみたいな感じに、フォーム内のボタンを押して
外部のテキストボックスに文字を入力していく、ってなやつです。
よろしくお願いします。
0393デフォルトの名無しさんNGNG
VB6対応のリファクタリングツールってないのかな?
VBって、支援ツールが極端に少ないよね。
0394デフォルトの名無しさんNGNG
>>391
Command関数を解析
0395デフォルトの名無しさんNGNG
>>392
キーボードドライバーを作らないのであれば、Sendkeys等。
0396379NGNG
>>380-381
飛び先はTabindexで指定のつもりだった。
380氏の構想の方が応用範囲は広いですね。
0397デフォルトの名無しさんNGNG
テキストボックスの内容を一行ずつ取得するにはどうすればいいんですか
0398デフォルトの名無しさんNGNG
>>397
一文字づつ改行コードを探すか、Splitでバラバラにして読むか
0399デフォルトの名無しさんNGNG
>>398
ありございます
0400デフォルトの名無しさんNGNG
>>389
コンボボックスの Styleプロパティ が ドロップダウンコンボ 及び 標準コンボ の場合、何故か ListIndexプロパティ への書き込みが反映されません。
スマートな方法としては Public変数 に ListIndex値のコピー を持たせておく方法があります。
どうしても ListIndexプロパティを変えたい場合は、まず、PictureBoxを1つ設置し TabStop を Falseにして表示範囲外に置き、次のようにします。

Private Sub Combo1_Change()
Dim i As Integer
Dim strTmp As String
strTmp = Me.Combo1.Text
For i = 0 To Me.Combo1.ListCount - 1
If strTmp = Me.Combo1.List(i) Then
Me.Picture1.Tag = i
Me.Picture1.SetFocus
Exit Sub
End If
Next i
End Sub

Private Sub Picture1_GotFocus()
Me.Combo1.ListIndex = Me.Picture1.Tag
Call MsgBox("現在のインデックス = " & CStr(Me.Combo1.ListIndex))
Me.Combo1.SetFocus
End Sub

これでいけると思います。
0401400NGNG
訂正:
ListIndexプロパティ への書き込みが反映されません。
↓
ComboBoxがフォーカスを持っている間に変更された ListIndexプロパティ への書き込みが反映されません。
0402デフォルトの名無しさんNGNG
「プロシジャーの宣言が、イベントまたはプロシジャーの定義と一致していません」
というエラーが出るんですが、考えられる原因を 教えてください。
0403デフォルトの名無しさんNGNG
実行時エラー '424':
オブジェクトが必要です。

というエラーが出るんですが、考えられる原因を 教えてください。
0404デフォルトの名無しさんNGNG
>>402
タイプミス。

>>403
用意してない物を使おうとした。
0405デフォルトの名無しさんNGNG
構造体をフォームのGENERALのところでPUBLICで宣言したら、
定義できませんといわれました。どうしたら構造体で使えますか
?
0406デフォルトの名無しさんNGNG
>>405
漏れも昔VBでそういう事あったよ。
フォームモジュールが一種のクラスモジュールだから、多分、構造体を
定義できないんでは?って、考えたけどな。
0407デフォルトの名無しさんNGNG
SHBrowseForFolderで新しいフォルダを作成するときにできるデフォルトの
「新しいフォルダ」ってフォルダ名を変更することは出来ないのでしょうか?

「新しいフォルダの作成」ボタンを押すと日時とか連番とかのフォルダが
自動生成されるようには組めないでしょうか?
0408デフォルトの名無しさんNGNG
>>405
標準モジュールを追加して、そこに書く。
0409デフォルトの名無しさんNGNG
今時構造体かよ
0410デフォルトの名無しさんNGNG
>>405
Friendで定義すればできるかな。
0411デフォルトの名無しさんNGNG
>>405
>>408の言うとおりだなや。ちなみに、プロパティの引数を構造体にしたい
場合はPublicで宣言すると文法エラーになる。Friendで宣言しとくれ。

って事は、VBでは構造体を引数に持つDLLは作れないって事か・・・?

>>406
フォームモジュールは、Formクラスを継承したクラスって事かね。VB2の頃
からVB使ってたんで正直意識してなかったんだけど、この事に気付いてから
昔より綺麗なコードが書けるようになったと感じてる。

>>409
構造体って時代遅れなのかなぁ。プロパティにするってのはいい事なんだが、
関連性のある複数のデータを一気に設定、取得したいって場面では、プロパ
ティの引数を構造体にすると便利なんだけどなぁ。

COMポートの設定とか、設定項目を構造体にしてプロパティに渡してる。
0412デフォルトの名無しさんNGNG
Javaには構造体などない。
0413デフォルトの名無しさんNGNG
VBで作ったactiveXコントロールから、
同じHTMLにのってるjavascript叩きたいんですが教えてください。
0414デフォルトの名無しさんNGNG
プログラムに日本地図を組み込みたいんですが、
そんな、ActiveXありますか?
0415414NGNG
よろしくお願いします。 <(_ _)>
0416デフォルトの名無しさんNGNG
>>411
> って事は、VBでは構造体を引数に持つDLLは作れないって事か・・・?
作れるよ。

ただしVBのDLLはActiveX(COM)なんでCOMとして(レジストリに)登録された構造体しか使えない。
だから構造体をActiveXで定義して登録すれば、構造体を使える。

具体的にはActiveXプロジェクトのPublicクラスモジュールで
Public構造体を定義して、それを参照設定すれば使える。

> 構造体って時代遅れなのかなぁ。プロパティにするってのはいい事なんだが
そうじゃなくて、Javaみたいにクラスで代用しろと言うことでしょう。
0417デフォルトの名無しさんNGNG
>>414
単純に日本地図ってんならActiveXじゃなくてただの絵でいいんじゃねーの?
0418414NGNG
>>417
いやあのー、会員分布を作ってるんですけど
会員のいる県といない県の色を変えたりとか
その県をクリックしたら、会員名簿を表示する
ようにしたいんです。
0419デフォルトの名無しさんNGNG
>>418
日本地図くらい書けよ
0420デフォルトの名無しさんNGNG
>>418
"GIS"で検索してみれば?
0421デフォルトの名無しさんNGNG
確か、マップオブジェクトってなかったっけ?
0422デフォルトの名無しさんNGNG
日本地図 ActiveXでぐぐれば
VBで作った日本地図・世界地図ソフトで
使われているコントロールに出会えるが・・・。
これは用途に対して高機能すぎる気がするな。
0423デフォルトの名無しさんNGNG
VBscriptの質問なんですけどON error gotoが使えないから
エラーメッセージをどのようにしていますか。
コミットしてロールバックするにはどうしてますかね?
0424デフォルトの名無しさんNGNG
On Error Resume Next使ってエラートラップすればいいだろ?
0425デフォルトの名無しさんNGNG
コミットしてロールバックするって意味分からんが
On Error Resume Nextして
逐一、errの番号を確認して行くってどうよ
0426デフォルトの名無しさんNGNG
登録失敗した場合ロールバックしたいからです。
VBみたいに自動的にエラーラベルに飛んでいってくれればと思っているんですけど
VBSCRITは機能が弱いか
0427デフォルトの名無しさんNGNG
>426
弱いのは機能じゃなくてお前のアルゴリズム力だ。
色々やってみりゃすぐに出来るだろそんなもん。
0428デフォルトの名無しさんNGNG
文字列の中から、正確に「メールアドレス」だけを取得することってできますか?
ランダム文字列(文章)の中のどこかにメールアドレスが入ってるんですが。

一応、アドレス前後にスペースが入っているのですが、そこ以外にも
スペースは多様されているので、スペースを頼りにするのも
確実ではないです。

あと、@を頼りにやってみたのですが、アドレスの一部としてでなく
@が使われている場合もあり、これも確実ではありません。。

よろしくお願いします。
0429デフォルトの名無しさんNGNG
名簿屋かウィルス関係か・・・ってのが真っ先に浮かんで、勝手に嫌な気分になった・・・イッテクル
0430428NGNG
>>429
そう思われても仕方ないですね。。スマソ。。
会社の支店のメール本文からアドレス抜きだすように言われたんですが、
いかんせん量が多くて、手動では取りきれないなと思ったもので…。
こちらこそ逝ってきます。
0431デフォルトの名無しさんNGNG
>>428
正規表現
0432デフォルトの名無しさんNGNG
VBでUSBカメラの映像を表示しモニターしたいのですが
何か簡単な方法が有れば教えてください
宜しくお願いします。
0433デフォルトの名無しさんNGNG
文字列内に@を含んで/を含まなければメアド。
0434デフォルトの名無しさんNGNG
>>428
1)@の両側スペースまでをアドレスとする。
2)半角文字以外が入っていたら除外
3)左右が空文字なら除外

これ以上は有効なアドレスかは試してみるしかないんじゃないの?
(システム判断は無理だから人判断)
0435デフォルトの名無しさんNGNG
Printerオブジェクトを使って、LANで共有されたレーザープリンタに出力すると文字化けします。
アプリケーションからRAW形式で印刷が指示された時は、プリンタのプロパティでEMFに設定しても
RAWでスプーリングされるようですが、この場合はどうしたらいいんでしょうか?
0436デフォルトの名無しさんNGNG
>>428
4)@以下のピリオドの数が2個までで、かつ連続しないこと
5)メアドの禁則文字が使われてないこと
6)国別コードや属性コードのデータと比較
0437デフォルトの名無しさんNGNG
アロハPC1というCTIの装置をVBから使ってます

装置側に未対応分の着信履歴がある状態で新たに電話がかかってくると
VB側に送られてくる電話番号が現在かかってきているものではなく
未対応分の電話番号になってしまいます。

何か対策方法はあるでしょうか?
0438デフォルトの名無しさんNGNG
>>437
質問してる範囲はVBと関係ない。仕様書とFAQを熟読。
0439デフォルトの名無しさんNGNG
あのう

いまさらこんなことを聞くのも恥ずかしいのですが
クラスモジュールにメソッドをたくさん追加すると
そのインスタンスオブジェクトは重くなるのでしょうか?
メモリサイズや動作速度です。

そのクラスにしか関係しない処理は、クラスモジュールにまとめてしまうべきだと思ったのですが、
一箇所でしか使わないものだからと、呼び出し元に書いたほうがいいと言われまして・・・
0440デフォルトの名無しさんNGNG
>>439
あんまり気にした事ないから知らないけど、気になるならベンチマークプログラム組んで回すのも手かと。
0441デフォルトの名無しさんNGNG
>>439
オブジェクト内のネストが深い場合は、単純に上から順番に辿ると遅くなる。
(あるオブジェクトが別のオブジェクトを内包し・・・の状態)

ただし、その場合でも連続処理する場合は、SETとかで参照を持っていればOK。

あなたがいっている部分では、重くなることより設計の綺麗さを優先させるべきでは?
1つのクラスが数百ものメソッドを持ってる段階でおかしいわけで。
0442デフォルトの名無しさんNGNG
>>441
> 1つのクラスが数百ものメソッドを持ってる段階でおかしいわけで。
だれも数百ものメソッドを持っているなんて言って無いと思うが?

>>439
クラスというものをちゃんと分かっていると仮定して言うが
クラスにあるべきものはクラスに書く、そうでないものはクラスに書かない。
一箇所でしか使わないかどうかは関係ない。
クラスと処理の内容がわからないからどっちにあるべきかは言えない。

インスタンスを複数生成してもメソッドのコード部分は
共有されるはずなので、クラス自体のメモリサイズは増えないはず。
逆にインスタンスを生成していない場合はコードで使用するメモリが
開放されて軽くなる可能性もある。

動作速度も実行しないのなら影響ないし実行したらしたで、
実行する部分がクラスか呼び出し元かに変わるだけなので問題にならない。

まあ本当に厳密に考えると、クラス(フォーム)は標準モジュールに比べて、
メソッド呼び出しテーブルのために数バイトメモリが必要だし、
インスタンスを判断するために、一回の呼出しごとに数クロック余計にかかると思うが、
数百Mhz〜数Ghz(一秒間に数億クロック実行)・メモリ数百Mバイトの時代だ。
影響はないといっていいだろう。
0443デフォルトの名無しさんNGNG
簡単な質問ですがVBでブラウザを立ち上げる事が出来ましが
VB終了してもブラウザが終了しません、どのようにしたら
良いか、教えてくださいお願いします
0444デフォルトの名無しさんNGNG
>>443
ブラウザの起動方法を明記してね、話はそれから
0445デフォルトの名無しさんNGNG
質問です。

Cで関数を組んで、APIのような形で使いたいのですが
うまく関数に値が渡せていません。
Cで組んだ関数は
struct HOGE{
int a1;
int a2;
};

HOGE fncSub(int p1,int p2,int p3);

という形になっていて

Public Type HOGE
a1 As Long
a2 As Long
End Type

Declare Function fncSub Lib "hoge.dll" (ByVal p1 As Long, _
ByVal p2 As Long,ByVal p3 As Long) As HOGE

で呼び出しているのですが。
どこを修正したらよいかお願いします。
0446デフォルトの名無しさんNGNG
俺分からんけど、たぶんCスレで訊いた方がいいと思う。
0447デフォルトの名無しさんNGNG
>>446
そうですか。
ではCスレで聞いてきます。
0448デフォルトの名無しさんNGNG
>>446
なんでじゃい!わからんかったら丸投げかよ!それもCスレかよ!
>>447
うまく渡せてないってどんな状態だ
0449447NGNG
>>448
パラメータp1をDLL内からMessageBoxで表示させて確認したら
呼び出すごとに変な値になってるんです。
3を渡しているんですが「・」、「ワ」、「ヘ」とかになります。
p1を割り算の分母の一部に使うので、とても困っています。
0450デフォルトの名無しさんNGNG
>>444
Option Explicit

Private Declare Function ShellExecute Lib _
"shell32.dll" Alias "ShellExecuteA" _
(ByVal hwnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long

Private Sub cmdGO_Click()
'URLをブラウザで開く

ShellExecute Me.hwnd, "Open", "http://www.yahoo.co.jp", _
vbNullString, App.Path, 1

End Sub

こんなのですが、URL起動しますが、閉じ方が解りません
0451デフォルトの名無しさんNGNG
>>449
__stdcallは?
0452449NGNG
>>451
DLL側にちゃんとあります。
確認しました。
0453デフォルトの名無しさんNGNG
>>450

Dim ie
Set ie = CreateObject("InternetExplorer.Application")
ie.visible = True
ie.Navigate "http://www.2ch.net/"

'-----

MsgBox "OKを押すとIEを閉じます"
ie.quit
Set ie = Nothing
0454デフォルトの名無しさんNGNG
>>452
CでのintはVBでのLongだっけ?
0455452NGNG
>>454
そうみたいです。
調べたサイトではそうするように書いてありました。

ttp://www.angel.ne.jp/~mike/vb_dll/vb_dll04.html
0456デフォルトの名無しさんNGNG
>>453
閉じました、有り難う御座います
0457デフォルトの名無しさんNGNG
>>450
シェル関数で起動した場合、ちょっと面倒だな

ちなみにブラウザをIE固定でいいなら、453のやり方が楽でいいんじゃないかな
登録されているブラウザってことになるなら、ウインドウを検索してWM_CLOSEを
メッセージを送るとかかな
0458デフォルトの名無しさんNGNG
一足遅かったか・・・
0459デフォルトの名無しさんNGNG
ListView使ってるんですけど、

名前 タイム 距離 性別

見たいな項目があったとして、全部表示させた後に
距離だけ、項目(列)を消したいんですけど、どうやったらいいんですかね?
おねがいします。
0460デフォルトの名無しさんNGNG
>>457
IE固定じゃないのですが
その方法ですが教えてもらえますか
0461デフォルトの名無しさんNGNG
>>445
その組み方じゃHOGEの実体が残らないんじゃないか?

// DLL
void funSub(int p1, int p2, int p3, HOGE far *pshoge) {
pshoge->a1 = ...;
pshoge->a2 = ...;
}

' VB
Declare Sub fncSub Lib "hoge.dll" (ByVal p1 As Long, ByVal p2 As Long,ByVal p3 As Long, ByRef pshoge As HOGE)

とすれば良い気がする。
0462デフォルトの名無しさんNGNG
実体はどうかしらんが、値は帰ってくるのでは?
0463デフォルトの名無しさんNGNG
>>445
C板から来たんだけど。
Public Type HOGE
a1 As Integer
a2 As Integer
End Type
にしてみたら?
LongはVBがDLLに引数渡すときだけだと思う。
0464デフォルトの名無しさんNGNG
むかし作ったソースみたら、CとVB,全部Longでうまくいってたが。
0465デフォルトの名無しさんNGNG
どういうわけか戻り値に問題がシフトしているが(それはそれで問題だが・・・
449で言っているとおり、渡している引数がおかしくなっているようだよ
0466デフォルトの名無しさんNGNG
C書いてる環境にデバッガないの?
関数呼んだ直後に引数がちゃんと渡っているか見た方が
早くない?
簡略化したソースでもどっかにUpしてくれたら、試してやるよ。
0467デフォルトの名無しさんNGNG
ちょっと興味あったので、テストしてみた

c側
vbcalltest.cpp----------------
#include "stdafx.h"
DLLMain省略
void __stdcall HogeHoge( int x, int y, int* test )
{
*test = x + y;
}
-----------------------------
vbcalltest.def
LIBRARY VBCallTest
EXPORTS
HogeHoge@1
------------------------------
vb側は適当に
module1----------------------------
Declare Function HogeHoge Lib "VBCallTest.dll" (ByVal p1 As Long, _
ByVal p2 As Long, ByRef p3 As Long)
form1------------------------------
Option Explicit
Private Sub Command1_Click()
Dim back As Long
HogeHoge CLng(Text1.Text), CLng(Text2.Text), back
Text3.Text = CStr(back)
End Sub
0468デフォルトの名無しさんNGNG
環境はVB6とVC6 SP6ね
でこのようにすると落ちたね混合モードの結果
15: void __stdcall HogeHoge( int x, int y, int* test )
16: {
01BD1050 push ebp
01BD1051 mov ebp,esp
01BD1053 sub esp,40h
01BD1056 push ebx
01BD1057 push esi
01BD1058 push edi
01BD1059 lea edi,[ebp-40h]
01BD105C mov ecx,10h
01BD1061 mov eax,0CCCCCCCCh
01BD1066 rep stos dword ptr [edi]
17: *test = x + y;
01BD1068 mov eax,dword ptr [ebp+8]
01BD106B add eax,dword ptr [ebp+0Ch]
01BD106E mov ecx,dword ptr [ebp+10h]
01BD1071 mov dword ptr [ecx],eax
18: }
01BD1073 pop edi
01BD1074 pop esi
01BD1075 pop ebx
01BD1076 mov esp,ebp
01BD1078 pop ebp
01BD1079 ret 0Ch
0469デフォルトの名無しさんNGNG
で、フォームでは
text1 = 1
test2 = 2
って入れたのに
受け側のCでは
x=0x0012f5c0
y=1
test = 0x00000002
と入っていて、明らかに4バイトずれている
ためしに
VB側のDeclare文を以下のように変更してみた
Declare Function HogeHoge Lib "VBCallTest.dll" (ByVal p1 As Long, _
ByVal p2 As Long, ByRef p3 As Long) As Long
戻り値にlongをつけたわけだがこうするとなぜかうまくいった
0470デフォルトの名無しさんNGNG
>>445
わあ、漏れも昔こうなったけど、こうやって急場しのぎで参照で誤魔化した。
-----------VB---------
Type DLLINT
i As Integer
End Type
Declare Function fncSub Lib "hoge.dll" (ByRef pp1 As DLLINT, _
ByRef pp2 As DLLINT,ByRef pp3 As DLLINT) As HOGE
---------C--------
struct DLLINT {
int i;
};
HOGE fncSub(DLLINT* pp1,DLLINT* pp2,DLLINT* pp3);
解決は pp1->i
0471デフォルトの名無しさんNGNG
ちなみにそのときのC側での変数は以下のとおり
x=1
y=2
test=0x0012f5e0
0472デフォルトの名無しさんNGNG
スタックの状態はこんな感じ
正常時
ebp = 0012f598
0012F598 F8 F5 12 00 82 21 40 00 01 00 00 ...!@....
0012F5A3 00 02 00 00 00 E0 F5 12 00 04 F6 .....瑾....
0012F5AE 12 00 D4 F6 12 00 01 00 00 00 01 ..ヤ........
0012F5B9 00 00 00 61 15 DF 77 91 04 01 01 ...a.゚w....

エラー時
ebp = 0x0012f584
0012F584 F8 F5 12 00 A9 21 40 00 C0 F5 12 ..ゥ!@.タ..
0012F58F 00 01 00 00 00 02 00 00 00 E0 F5 .........瑾
0012F59A 12 00 04 F6 12 00 D4 F6 12 00 01 ......ヤ....
0012F5A5 00 00 00 1A 12 01 18 20 A2 6B 00 ....... 「k.
0473デフォルトの名無しさんNGNG
くそ!なぜか、VB側のデバッグ情報が更新されない
ちょっとまっててね
0474デフォルトの名無しさんNGNG
>>445
原因は簡単、C関数から構造体の値を返り値に取る、なんてイレギュラーなこと
やってるからだよ。

そういうことしたい場合は、C関数の方では構造体のポインタを引数に取るようにして、
VBの側では構造体(ユーザー定義型)をByRefで渡すようにしないと。
0475デフォルトの名無しさんNGNG
これが、VB側の呼び出し情報ね
正常時
67: HogeHoge a1, a2, back
0040218C mov ecx,dword ptr [a1]
0040218F lea eax,[back]
00402192 push eax
00402193 push edi
00402194 push ecx
00402195 call ___vba@001F19D0 (00401b00)
0040219A call dword ptr [__imp_@__vbaSetSystemError (00401014)]

エラー時
67: HogeHoge a1, a2, back
0040219F mov ecx,dword ptr [a1]
004021A2 lea eax,[back]
004021A5 push eax
004021A6 push edi
004021A7 lea edx,[unnamed_var1]
004021AA push ecx
004021AB push edx
004021AC call ___vba@0018F0F8 (00401b04)
004021B1 call dword ptr [__imp_@__vbaSetSystemError (00401018)]
004021B7 lea ecx,[unnamed_var1]
004021BA call dword ptr [__imp____vbaFreeVar (0040100c)]
0476デフォルトの名無しさんNGNG
voidだとFunctionではなくSubとか
0477デフォルトの名無しさんNGNG
>>476
その通りだね、今デバッグしていて気づいた・・・
0478デフォルトの名無しさんNGNG
やっと今から本題に入るか構造体を渡すとどうなるか
ちょっと待っててね
0479デフォルトの名無しさんNGNG
>>470
まちごうた。漏れはC++でやったんで、参照渡したんだが。
HOGE fncSub(DLLINT& pp1,DLLINT& pp2,DLLINT& pp3);
0480デフォルトの名無しさんNGNG
>>470
まちごうた。漏れはC++でやったんで、参照渡したんだが。
HOGE fncSub(DLLINT& pp1,DLLINT& pp2,DLLINT& pp3);
0481デフォルトの名無しさんNGNG
次のソース
C側
vbcalltest.cpp---------
typedef struct{int a;int b;}Hoge;
Hoge __stdcall HogeHoge( int x, int y, int* test )
{
*test = x + y;Hoge h;h.a = x;h.b = y;return h;
}
VB側--------------
module1
Type Hoge
x As Long
y As Long
End Type

Declare Function HogeHoge Lib "VBCallTest.dll" (ByVal p1 As Long, _
ByVal p2 As Long, ByRef p3 As Long) As Hoge
form1---------------
Private Sub Command1_Click()
Dim back As Long
Dim a1 As Long
Dim a2 As Long
a1 = CLng(Text1.Text)
a2 = CLng(Text2.Text)
HogeHoge a1, a2, back
Text3.Text = CStr(back)
End Sub




0482デフォルトの名無しさんNGNG
…うーん、ダメだ
なぜか、VB側のソースがデバッガで追うとおかしくなる
VBのデバッグはVCではうまく出来ないなぁ
0483デフォルトの名無しさんNGNG
ここのスレで聞くか迷ったんだけど…

Virtual PC 5.2 (ゲストWin2000)にインストールしようとすると
「Microsoft Virtual Machine for Java」の更新作業に入ってその後再起動。
でまた更新作業の繰り返しになっちゃう。

Javaがらみかと思ってSun版のJavaを入れたけど駄目だった。
どなたかVirtual PC上にインストールしている方おられません?
0484デフォルトの名無しさんNGNG
>>445
Declare Function fncSub Lib "hoge.dll" Alias "_fncSub@12" _
(ByVal p1 As Long, ByVal p2 As Long,ByVal p3 As Long) As HOGE
0485デフォルトの名無しさんNGNG
VBはまったく知らないのですけど、VBを使っての開発でオリジナルのコントロールが
必要な時は、わざわざActiveXコントロールを手に入れるかまたは、自分で作らないといけないのでしょうか?
0486デフォルトの名無しさんNGNG
VB以外のこともそれほど詳しくないのですが、他の環境では
必要なときはどこからか入手するか自分で作る以外に選択肢はあるのでしょうか?
0487459NGNG
>>459
おねがいします
0488デフォルトの名無しさんNGNG
>>485-486
それ以外だとどういったものが予想されるかね?
0489デフォルトの名無しさんNGNG
>>483
俺は分からないんで答えられんが、なんでよりよってこのスレで聞こうと思ったの?
0490デフォルトの名無しさんNGNG
>>489
反応を観察してみたかったw
0491455NGNG
レスをくれた皆様、ありがとうございました。
解決いたしました。

Cで組んだDLLを>>461さんや>>474さんの仰るとおりに
組みなおしたて、VB側で構造体をByRefで渡してやると
パラメータもしっかりわたって、結果もちゃんと返ってきました。
本当にありがとうございました。

ほかのレスをくれた方々も、原因を模索していただきありがとうございました。
0492デフォルトの名無しさんNGNG
>>488
ランダムなバイト列が偶然役に立つコントロールのコードになって記録媒体に保存されていた(自然発生説)
0493デフォルトの名無しさんNGNG
>>492
生命の誕生かよ(w。
0494デフォルトの名無しさんNGNG
>488
実はこの日の時の事を予測したバンネバー・ブッシュ(MJ12)が、
ロズウェルに墜落した地球上の物体ではない"何か"の中から
回収しており、それが>485の家に「デファレンシャル・エンジン」として届く説。
0495デフォルトの名無しさんNGNG
VBで作成したAPを、Win2000環境からWinXP環境に
載せかえると、グリッドがずれてしまいます。
どうやら、スクロールバーの太さが違うために
発生しているようなのですが、スクロールバーを
設定するAPIなどあるのでしょうか?
いろいろ調べたのですが、載っていないので…。
よろしくお願いいたします。
0496デフォルトの名無しさんNGNG
>>495
スクロールバーの大きさを変えるのではなく、大きさにあわせて
プログラムするのがふつう。
0497デフォルトの名無しさんNGNG
>>496
今まで、2000環境で作成していたのですが、
XPを使いたい!とおっしゃる人々もいて、
できればXPと2000どちらでもうまく動く
感じで〜みたいな感じなのです;;
0498デフォルトの名無しさんNGNG
>>497
だから、修正しようよ。プログラムを。
0499デフォルトの名無しさんNGNG
>>495
ていうかさ、人に尋ねることによって問題解決を図りたいなら
まず最低限「問題」が他人に正確に伝わるように努力したらどう?

自分以外の他人はみんなエスパーだとでも(以下略

スクロールバーの太さが違うためにどんな問題が発生してるのか
さっぱり分からないんですが。「グリッドがずれる」とは?
0500主任(デブ)NGNG
すいません。初歩的なことを教えていただきたいのです。
最近ようやくVB6.0を使えるようになりました。

そして構造計算用のソフトをSDIで製作しました。

しかし「ファイルの保存」について、どの本を読んでも
txtファイルレベルの保存方法は書いてあるのですが、
それ以上のことが書いてありません。

例えばdocやxlsなど拡張子を好きに作ったアプリを製作できるのですか?
また出来るのであればMDIで作ることが必須になるのでしょうか?

どなたか詳しい方いらっしゃいましたら教えて下さい。

慣れない仕事で結構毎日必死なんですw
0501主任(デブ)NGNG
あと、ついでと言っては何ですが、画像を変化させたいときは
ピクチャークリップコントロールを使うと本に書いてあったのですが、
色々問題があるとかないとか・・・?マイクロソフトのVBサイトに
記されてました。

同じサイズのピクチャーコントロールを何枚も重ねてvisibleで変えるのが
一般的なのでしょうか?

教えて君ですいませんm(_ _)m
0502デフォルトの名無しさんNGNG
>>500
docやxlsで保存するときは、そのフォーマットで自分で出力しなくてはならない。
各データフォーマット仕様を理解して、書き込みましょう。
また、MDIとは関係無い。
>>501
サイトに書いていたならそのURLを書きましょう。人に聞く態度じゃありません。
0503デフォルトの名無しさんNGNG
ワードやエクセルの形式であれば、VBからコントロールすることは可能
質問がワード、エクセル限定なのかはわからぬが。
あと、画像を変化、という事が何をしたいのか、もう少し詳しく書くべし
0504デフォルトの名無しさんNGNG
キャプションバーのないフォームだけでツールを作っているのですが、
実行中に[Win]+[D]を押すと非表示になってしまい、再表示させることが
できません。(タスクバーにはもともと表示させていない)。

ユーザが[Win]+[D]を押してもフォームが非表示にならない、
または[Win]+[D]が押されたことを捕捉して再表示させてやる方法が
多分あると思うのですが、もしわかる方いましたら教えて下さい。
0505主任(デブ)NGNG
>>501-502
色々ありがとうございます。

聞き方も至らぬようで本当に申し訳ないです。

1.ファイル保存っていうのは「独自の拡張子を作れるのか?」ってことです。

2.画像を変化っていうのは言うなればパラパラ漫画みたいなものですが、
同一箇所にイメージを何枚も重ね合わせて貼って表示・非表示でコントロール
するのは何となく原始的っぽくて聞いてみました。。。

ですから、もし、パラパラ漫画みたいなのを効率よく(?!)作成する方法があれば
教えていただけると何ともありがたいです。それにそのほうが的確っぽいですねw

ちなみにサイトは
http://www.microsoft.com/japan/msdn/vbasic/Downloads/picclip.asp
ここです。そもそもVB4.0が云々って書かれているので最近は使わない
コントロールなのかと疑問をもってみました。
0506デフォルトの名無しさんNGNG
>>505
1
拡張子は管理している団体も無いので独自の物を作ってもいいだろうけど、
拡張子辞典などのサイトやGoogleですぐひっかかるような名前はやめておくのがいい
VBとは関係無いが、Macの拡張子風に使うクリエイターは登録制だが。

2
WebBrowserコントロールでGIFを出すのもよし、タイマとloadpictureでするもよし。
効率とは、リソースを食わないやり方とかプログラムを作る効率とかわからないので具体的に。
サイトについては、書かれている通り。
0507デフォルトの名無しさんNGNG

はじめまして。質問なのですが、

inetコントロールのexecuteを使用した際にそのinetを使用して作成したツールが
終了時に約1分程度応答がなくなってしまいます。
(フォームは消えるが、アプリケーションは残っている状態)

現在のプログラムの流れですが、
・.executeでgetコマンドを送信
・statechangeイベントで12が返ってくることを確認
・上記確認後、.cancelで接続解除(statechangeイベントで10が返ってきていることを確認済)
です。

上記流れを実行したのちにフォームは消えるのですが、アプリケーションが残ってしまいます。
form_unload関係の所ではinetコントロールには一切触れておりません。

どなたこの現象の回避方法がわかる方いませんでしょうか。
わかる方がいらっしゃればよろしくお願い致します。

0508デフォルトの名無しさんNGNG
カーソルキーが 押されたら ラベルの位置を動かすようにしたいのですが
どうしたらいいのでしょうか?
Form_KeyDownやForm_KeyPressのイベントが発生しないんですけど。
0509デフォルトの名無しさんNGNG
>>508
Form_KeyDown等はフォームにフォーカスが在る場合じゃないと発生しないよ。
通常、コントロールが張ってある場合、フォーカスのあるコントロールでイベントが発生するから、
そのコントローラのKeyDownイベントで操作しないとダメ。
0510デフォルトの名無しさんNGNG
>>508
押した時点でフォーカスは誰が持っているのでしょうか?
FormのKeyPreviewプロパティの設定は?
0511デフォルトの名無しさんNGNG
>>508
ロットによってはそのイベントが発生しないものがある。
0512デフォルトの名無しさんNGNG
>>508
疲れてる場合などにイベントが発生しないことがある。
0513508NGNG
フォームには、コマンドボタンとラベルが貼ってあり、
フォーカスは コマンドボタンにあります。
KeyPreviewは Trueにしてあります。
0514デフォルトの名無しさんNGNG
ちこっとためしたけど、ボタンがあると確かにその通りですね。

じゃあどうする?ってなったら、さぶクラス化してメッセージフックかな?
0515デフォルトの名無しさんNGNG
>>513
どのキー押下に対応させたいのでしょうか?
↑↓→←キーでは反応しません。
それ以外であれば
Private Sub Command1_KeyDown(KeyCode As Integer, Shift As Integer)
のイベントで発生すると思うのですが。
0516514NGNG
どうも、ボタンのデフォルト処理として、カーソルキーでボタン同士のフォーカス移動がありますね。
なので、このボタンを使っている限りはメッセージフックでもしない限りできないと思われます。

Spyで見て、ボタンにフォーカスがある状態でメッセージを受けているのであれば、横取り可能です。
0517508NGNG
わかりました。

テキストボックスにフォーカスがないと 発生しないようです。

なんかいまいちな仕様ですねぇ。
0518デフォルトの名無しさんNGNG
>>517
はたしてそうかな?(ニヤリ
0519デフォルトの名無しさんNGNG
ボタンのキャプション文字列を途中で改行したいのですが
どうすれば良いのでしょうか。

スペースで調節したりもしてみたのですが、
ボタンが押されると文字列がずれてしまいますので
できればちゃんと改行がしたいな、と思っています。
0520デフォルトの名無しさんNGNG
Command1.Caption = "ボタンの" & vbCrLf & "キャプション"
0521デフォルトの名無しさんNGNG
改行を含むテキストをコピペ
0522デフォルトの名無しさんNGNG
>>507
再現しないな〜。普通に正常終了する。
とりあえずどっかにソースうpしてみ?
0523デフォルトの名無しさんNGNG
ラジオボタンをいくつか使うのですが、それぞれ個別に
設定できるようにするには、どうしたらいいのでしょうか?

今は、ひとつを選択したら、他の選択したのが消えてしまいます。
複数選択できるようにしたいのです(ラジオボタンで)
0524デフォルトの名無しさんNGNG
>>523
そういうときは通常、チェックボックスを使うもんだ。

ttp://e-words.jp/w/E383A9E382B8E382AAE3839CE382BFE383B3.html
0525デフォルトの名無しさんNGNG
>>523
Radioボタンはオーナーコントロールが共通の他のラジオボタンのマークを消してしまう。

Form
 Radio1
 Radio2
 Radio3

Radio2をオンにするとRadio1とRadio3が自動的にオフになる。

Form
 PictureBox1
  Radio1
  Radio2
 PictureBox2
  Radio3

Radio2をオンにするとRadio1は自動的にオフになるが、Radio3の状態は変化しない。
OK?
0526523NGNG
>>524

イメージとしては 2択なんですが、その2択が 複数あるので
困っているのです。
チェックボックスを使えばラクなのは わかっているのですが、
あえて ラジオボタンということで どうしたらいいでしょうか?
0527523NGNG
あと グリッドの上に ひとつずつ ひとマスずつ ラジオボタンを配置するんです。
どうにかなるでしょうか?
0528デフォルトの名無しさんNGNG
>>527
Foamならば、>>525さんの回答通り。
コンテナになるもので選択肢をくくってあげるだけ。

グリッドって何を使っているのかによるけど、あれはコンテナにはなりえない。
なので、標準であなたが目的としているものを実現できるグリッドを探して買いましょう。
0529デフォルトの名無しさんNGNG
>>526
透明にしたFrameで囲めば、その範囲だけで処理が完結するよ。
>>525さんと同じような感じだけどね。

Gridにラジオボタンを配置するのは、サードパーティのを買う必要があっ
たはず。
0530523NGNG
>>529
>透明にしたFrameで囲めば

どうすれば、Frameを透明にできるのでしょうか?
教えてください。
0531デフォルトの名無しさんNGNG
>>530
529じゃないけど・・・

Captionなし、Borderなし、バックカラーが背景と同じ色、を言いたいんじゃないのか?
0532523NGNG
ラジオボタンをひとマスずつ配置するので 複数をひとつにする場合、
グリッドをまたいじゃうのです。透明ならばいいですが、透明でなければ
線が消えてしまいます。
0533デフォルトの名無しさんNGNG
>>532
つうか、人のレスをきちんと読め。
あなたが行っている作業は、GRIDにRADIOを割り付けているのではなく、その上にただ置いているだけです。
なので、スクロールしたりすると一発OUTですよ。

グリッドの升目にRADIOを割り付けるならば、それに該当するコントロールを買いなさい。

そうじゃなければ、最終的にどっかでボロが出て破綻しますよ。
(糞仕様だとは思うけど、それをきちんと理解して実現する能力ないんじゃないか?)
0534デフォルトの名無しさんNGNG
>>531
フォローさんくす。その通りでつ。
BorderStyleを無しにしたら、Captionもついでに消えて楽だしね。

>>532
透明というには語弊があったけど、もちっとやりたい状況や今試してる内
容を詳細に書いてくれるとありがたいな。実現したい表現を別の方法でで
きるかもしんないし。
0535デフォルトの名無しさんNGNG
そもそもRADIOボタンじゃないと駄目なのか?

特定のセルのクリックでマル(○)が出たり消えたりじゃ駄目なの?
0536デフォルトの名無しさんNGNG
>>535
白丸と黒丸の交互表示もいけるよね。
0537デフォルトの名無しさんNGNG
>>536
確かグリッドのセルにアイコンかBMPを出せるよね。
昔それでチェックもどきを作った覚えがある。
0538523NGNG
>>533
グリッドは使うけど、スクロールはしないし、
スクロールしたとしても、その対処は 簡単です。

>そうじゃなければ、最終的にどっかでボロが出て破綻しますよ。
テストは、ちゃんとやりますよ。

0539デフォルトの名無しさんNGNG
>>536
オレはいつも☆と★を使ってる。
0540523NGNG
ま、糞仕様というのは、正解だと思うが(w
0541デフォルトの名無しさんNGNG
>>523 は女。間違いない。
0542デフォルトの名無しさんNGNG
>>538
スクロールに対する対処が簡単だというレベルなら、こんなことは聞かないと思うんだが。

実際、私はコンテナに内包されないコントロールのスクロール処理なんて考えるだけで嫌になるけどね。
0543デフォルトの名無しさんNGNG
>>540
糞仕様だろうと、それが仕様になった時点で製造する側の責任だけどね。

実現性を考えないで仕様を決めたり、あと仕様に口出せない立場だったら、そういう立場を変える努力をしないと。
0544デフォルトの名無しさんNGNG
>>541
しかも英語教えてたりしてw
0545523NGNG
最終的には、ひとつのセル内に フレームをひとつ貼り、その上にラジオボタンひとつ
貼る方法しかなさそうだ。

もう少し 簡単にできる方法が ないかと思って聞いただけなんだけどね。
0546デフォルトの名無しさんNGNG
>実現性を考えないで仕様を決めたり、あと仕様に口出せない立場だったら、そういう立場を変える努力をしないと。
ま、そこは 派遣社員の弱いとこ。
新規参入で、すぐ これじゃあねぇ・・・。
0547デフォルトの名無しさんNGNG
>>545
簡単な方法は、少し上にある特定のセルに対するクリックで○なり絵なりのON/OFFだって。
0548デフォルトの名無しさんNGNG
そんな時こそMarlettフォントですよ。
0549デフォルトの名無しさんNGNG
そこで、PowerBuilderですよ
0550デフォルトの名無しさんNGNG
>>522
http://pc5.2ch.net/test/read.cgi/tech/1088860889/289
0551デフォルトの名無しさんNGNG
PowerBuilderかぁ、昔 やったよ。
聞ける所が それを作った会社のHPだけという・・・。

0552507NGNG
すみません誤爆でした・・・>>550
0553デフォルトの名無しさんNGNG
>>507
HPもサーバーアクセス権も持ってないからFTP試せないんでHTTPで試したんだが、普通に終了したよ。
違いと言えば、Protocolプロパティに入れている値と、RemoteHostプロパティの代わりにURLプロパティに代入しているくらい。
ひょっとしたらFTPは動作が独特なのかも?
0554デフォルトの名無しさんNGNG
別のPCのフォルダからプロジェクトやフォームやらを、自分のPCへコピーして
持って来たりあるいは別のPCへ移動したとする。
その場合VB(VB6.0)でコードを書く続きをしようと思って開こうとすると
「パスがみつかりません。このままロードを続けますか?」と出る。
プロジェクトはプロジェクトで別名でコピー、フォーム類はフォーム類で
別名でコピーしてもだめ。
 EXEファイルを作って別のPCでやろうとしてもだめ。
これってどういうこと?

前任者の作ったソフトを改造してるのですが別のPCへコピーしてきて
まったく問題なく開けるのもあるのですがいくつかは上記のようになる。
どうしてこうなるのでしょう?
0555デフォルトの名無しさんNGNG
>>554
使用しているActiveXが他のPCにインストール&登録されてないんでしょ?
たしかエラーログに無いActiveX名が出力されたと思うけど。
0556デフォルトの名無しさんNGNG
>>554
.vbpファイルをメモ帳で開いて見てちょ
0557554NGNG
納得。そういえばEXEを他のPCでやろうとしたとき
「OCX・・なんたらかんたら・・」とエラーが出たことがあったなあ。
0558554NGNG
>557
 .vbpファイルをメモ帖で開くとわかるんですか?
0559デフォルトの名無しさんNGNG
質問です。どなたか分かる方がいましたら教えていただけますか?
ホームページ中でBASIC認証をしたいと思っているのですが、設置方法が
分かりません。グーグルで調べたら「.htaccess」が必要だとわかったのですが、
その後はどうしたら良いのでしょうか?
板違いならば、申し訳ありませんが誘導お願いします。
失礼しました。
0560デフォルトの名無しさんNGNG
>>554
557じゃないけど、開いても解からないなら解からないかも。

たぶんプロジェクトで使用するファイルへのパスが、プロジェクトファイル(拡張子が.vbp
のファイル)からの相対パスじゃなくて、元のPCにおける絶対パスに
なってるんでしょう。

VBだとなぜか時々こういう問題が発生する。
どういう場合にこういう糞な事態に陥るのかは解からないけど、
0561560NGNG
だからつまり、プロジェクトファイル内の各ファイルのパスを
相対パスに書き換えてやれば問題は解決する、ってことね。
0562デフォルトの名無しさんNGNG
だめだ・・・こりゃ
0563デフォルトの名無しさんNGNG
次いって・・・みよう
0564デフォルトの名無しさんNGNG
232Cからのデータを受信して特定の文字を受信出来た時にフォームモジュール
を開いたり閉じたりしたいのですが、開くときは問題無いのですが、閉じるに
アプリケーションエラーで ”メモリがwrittenになることが出来ません” の
メッセージが出てきます、何か原因があれば教えてください

If  〜  Then
Unload Me
End If
 
  こんな感じで閉じていますが。。 
0565デフォルトの名無しさんNGNG
>>564
VBだけでそのエラーって出たっけ?
0566デフォルトの名無しさんNGNG
1.232C通信は何を使ってやってるのか?
親FoamにMSCOMM?

2.子Foam側で後始末が必要なAPIを呼んでおいて、やってねーんじゃないの?
0567デフォルトの名無しさんNGNG
>566
志村、スペルスペル!!
0568デフォルトの名無しさんNGNG
>>567
あっ・・・。まあわかるっしょ。w
0569デフォルトの名無しさんNGNG
>>567
昼下がりの眠たい時間にちょっぴりワラタ
0570デフォルトの名無しさんNGNG
>>559
おいおいBASIC認証はVisualBasicとは全く関係ねぇぞw
Webサーバ毎に設定方法は違うから自前のサーバならヘルプ等をみれ。
プロパイダ等のHPスペースならやり方や許可してるかどうかなどの
説明がユーザ向け説明のどっかに「必ず」あるからそこみてや。
0571デフォルトの名無しさんNGNG
>>566
>>528もあなただったのでしょうか?
0572デフォルトの名無しさんNGNG
>>571
い、いや・・。
0573デフォルトの名無しさんNGNG
グリッドで セル毎にフォントを変えるには どうしたらいいのでしょうか?

セル毎ではなくて、列単位でもいいです。
0574デフォルトの名無しさんNGNG
グリッドでセルの色を変えるとき
CellBackColor
というのを使いますが、これを使うとき、アクティブセルの位置を変更しないとダメです。
それだと 複数のセルの場合、時間がかかりそうなので、セル位置を変えずに
セルの色を変える方法があったら教えてください。
0575デフォルトの名無しさんNGNG
>>573
Cell.FontとかCellFontとかが存在すればできるんじゃないの?

>>574
RowBackColorとかColxxxは存在しなかったっけ?
そうじゃなければセルを範囲指定した場合は?
それでもあれなら、一旦非表示にすれば?(1セルずつの場合、それごとの再表示処理のコストがあるかもしれん)
0576573NGNG
>>575

ぜんぜん違ったけど、参考になったぜ。
CellFontName を使えばいける。
0577デフォルトの名無しさんNGNG
accessのVBAで質問です。
きっと内容はVBと同じだと思ったのでここで質問します。

指定されたフォルダの中にあるファイルを全て取得するには
どうしたら良いでしょうか?
サブフォルダも含む全てのファイルです。

色々調べてみたんですけどいまいち無くて...
0578デフォルトの名無しさんNGNG
>>577
Dirで再帰して巡ってくればいいんじゃないのか?
またはFileSystemObjectで回るとか。

APIならFindFirstFileがそのもの。
0579デフォルトの名無しさんNGNG
Application.FileSearchってなかった?
0580よっぱらいFCNGNG
bitmap上に円を水平に動かしたいのですが、どうすればいいのですか?
0581デフォルトの名無しさんNGNG
>>580
書いては消し、書いては消し。
0582デフォルトの名無しさんNGNG
>>580
1番簡単にやるなら、
[円を描く予定位置のイメージを保存]→[円を描く]→[絵をRefresh]
→[円を描いた位置のイメージを元に戻す]→以下繰り返し
って感じ。
0583フェルトNGNG
パソコンのゴミ箱アイコンで、ゴミ箱を空にするを選択したら、Dd121を削除できませんって出ます。
Dd121ってなんですか?
0584デフォルトの名無しさんNGNG
>>583
http://pc6.2ch.net/pcqa/ で聞け
0585デフォルトの名無しさんNGNG
winsockコントロールを使ったアプリケーンを作ったのですが
通信中にフォームをアンロードするとプロセスが残ってしまうことがあります。
どういった対策ができるのでしょうか?
0586デフォルトの名無しさんNGNG
>>585
Set Form = Nothing で解放すればいいんじゃないかな。
0587デフォルトの名無しさんNGNG
UnloadするときにCloseするとどう?
0588デフォルトの名無しさんNGNG
メモ帳を開くにはどうしたら良いのでしょうか
簡単な質問ですみません
0589デフォルトの名無しさんNGNG
Shell関数
0590デフォルトの名無しさんNGNG
VB6 WinXPです。
(SP等のこれ以上の環境はわかりません。)

Global dbcon as Connection
・・・
Set dbcon = New ADODB.Connection
dbcon.Open "文字列" ←ここで落ちてしまいます。

ランタイムエラーで落ちています。
dll環境を変えると(他の端末で実行すると)データベース接続ができます。
ADODB.Connectionが参照しているdllを特定させたいと思い、
grepをかけましたが、いくつかのdllが引っかかります。
どのdllを参照しているのかを特定させるにはどうしたら良いのでしょうか?

条件が少なくて申し訳ありません。
0591デフォルトの名無しさんNGNG
MDAC入れなおしてみれば?
0592デフォルトの名無しさんNGNG
>>590
落ちるPCを”誤ってフォーマット”して
OSからインストールしWindowsUpdateを食らわせて再びそのソフトをインストールさせるがよい
0593デフォルトの名無しさんNGNG
>>590
プロジェクト→参照設定→参照可能なライブラリ ファイル→Microsoft ActiveX Date Objects 2.5,6,7 Library
を選択すると
場所: C:\〜\ado\msado--.dll
のようにdllのパスがわかる。
0594デフォルトの名無しさんNGNG
waveOut系のAPIを使ってVBからWAVEを鳴らすプログラムを作っています。
しかし変な雑音のようなものしか聞こえなくて困っています。
どなたか分かる方はいらっしゃいませんか?

コードを羅列するのもどうかと思うので、概要を書きたいと思います。

1.Binaryアクセスでバイト配列にWAVEファイルを読み込む
2.読み込んだWAVEファイルから音声データ部分を抜き取る (Right関数使用)
3.WAVEFORMATEX構造体に必要なデータを入力
4. waveOutOpen(hwave, -1, wft, 0, 0, 0) をCallする
5.WAVEHDR構造体にデータを入力

最後に
Call waveOutPrepareHeader(hwave, whdr, Len(whdr))
Call waveOutWrite(hwave, whdr, Len(whdr))

で出力という感じです。

waveOutOpen関数の引数hwaveにはポインタが返されてるので、関数の呼び出しには成功しているようです。
恐らくWAVEHDR構造体の.lpDataへのポインタ指定に問題がありそうな気がするのですが、どうでしょうか。
現在は読み込んだ音声データのバイト配列 WavData( )を直接指定しています。
これを VarPtr(Cstr(WavData())) などにしても結果は同じでした。

0595デフォルトの名無しさんNGNG
>>594
日本語版VBの場合、バイト配列を文字列に変換するとデータは化けると思う。
0596デフォルトの名無しさんNGNG
処理中にイベントを発生させないようにするには、どうしたらいいのでしょうか?
0597デフォルトの名無しさんNGNG
メッセージをフックして、イベント要因となるメッセージを殺せばいいんじゃない?
0598デフォルトの名無しさんNGNG
>>596
基本的には597さんの通り。
今の処理が終了するときに、メッセージキューをお掃除してしまう。
(ただし、死ねといわれているのに、自決指令を無視したりしたらお行儀の悪いプログラムになってしまう)

単純なレベルでは、Form自身をDisableにしておけば、ある程度は防げるはず。
0599デフォルトの名無しさんNGNG
VB6でExcelを操作するにあたって色々調べているのですが、
情報が少なくてわかりません。もし分かる方は教えて下さい。

○イベント取得         
・ファイル表示イベント
・シート選択イベント
・セル選択イベント
・スクロールイベント
・グループ化イベント
・マウス移動イベント
・表示倍率変更イベント

○制御
・ファイル表示
・シート選択
・セル選択
・スクロール
・グループ化
・マウス移動
・表示倍率変更

             形式              戻り値  第一引数          第二引数

例 Classname::Method( int arg1, char* arg2 )  なし  取得したいデータの項番 取得データの格納場所


長文スマソ
0600デフォルトの名無しさんNGNG
Excelオブジェクトのヘルプ嫁。
っつーか氏ねよハゲ。
0601599NGNG
MSDNをインストールするまえにCDを破損したので見れません。
どこかに載っているなら誘導おながいします。
0602デフォルトの名無しさんNGNG
ExcelオブジェクトモデルのリファレンスはExcelのヘルプに載ってるな。
0603デフォルトの名無しさんNGNG
ここに載ってる。
ttp://www.microsoft.com/japan/msdn/library/
0604デフォルトの名無しさんNGNG
>>602
>>603
なんとかなりそうです。
ありがとうございますた。
0605デフォルトの名無しさんNGNG
>>601
MSDNが見れないのは絶対そんな理由じゃないと思うのは俺だけ?
0606デフォルトの名無しさんNGNG
>>605
みんなそう思ってるよ。(´・ω・`)
>>599以外はね。
0607デフォルトの名無しさんNGNG
EXEと同じ層にある"SET.htm"というhtmファイルを起動させたいのですが、上手くいきません。
以下のように書いているのですが、何処が悪いのでしょう?

Shell App.Path & "\SET.htm", vbMaximizedFocus
0608デフォルトの名無しさんNGNG
Shell関数って、ファイルを指定すると関連付けられてるアプリに渡されるんだったっけ?
0609デフォルトの名無しさんNGNG
>>607
関連付けで開く場合は、APIのShellExecute
0610デフォルトの名無しさんNGNG
Shell "Explorer.exe " & App.Path & "\SET.htm", vbMaximizedFocus

とか?
0611デフォルトの名無しさんNGNG
>>610
それが手っ取り早いね。ただ、IE統合前のWin95だと
通らないかも知れないけど、環境無いんで分からないや。

orz
0612はちみつ六郎NGNG
おはようございます。
Controls.addでメニューを生成するにはどうすればよいでしょうか。
既存のメニューの任意の位置に生成することってできるでしょうか…?
0613デフォルトの名無しさんNGNG
すいません!
ビットマップファイルの画素データを直接BMPファイルから
取得したいんですがどうすればいけますか?

フルスクリーンのゲームの裏で動かしているので
loadpictureでBMPをロードすると減色された画素データに
なってしまいます・・・
そこでBMPファイルから直接画素データを所得したらいいんではないかと
思ったんですけど、なかなかできません。
よろしくお願いします。
0614デフォルトの名無しさんNGNG
>>613
BMPファイルのフォーマット調べればすむことじゃん。
VBの問題ではないね。
全部のBMPに対応しようとするとするとめっちゃ大変だけどなw
0615607NGNG
>609-611
ありがとうございます。
今は手元に環境が無いので出来ませんが、今度やってみますね。
0616bbNGNG

メールソフト作ってるんだけどDNSのMXレコードを引けなくて困っています

具体的には

nslookup -q=MX docomo.ne.jp

のようなことと同じことしたいんです


だれかVBでMXレコードを引っ張ってくるプログラム作成した人いませんか?
0617デフォルトの名無しさんNGNG
メールソフト作るのにMXレコード引く必要あったっけ?
0618bbNGNG
直接相手のメール鯖にメール送信したいのよ
0619デフォルトの名無しさんNGNG
>>618
意味のない事するなよ
0620bbNGNG
意味あるだろ
0621名無しさん@そうだ選挙に行こうNGNG
SPAM発射器キタ━━━━━━(゚∀゚)━━━━━━ !!!!!
0622名無しさん@そうだ選挙に行こうNGNG
>>594
ゲームなどの同期など特別な理由があるならしょうがないがVBからWavを鳴らしたいだけなら、
WindowsMediaPlayerを内部利用する簡単な方法があるよ。VBのツールボックスにコンポーネントで
WindowsMediaPlayerを追加しフォームに貼り付ければカスタムコントロールとして利用できる。
コントロールの具体的な使い方はオブジェクトブラウザ参照のこと。
以下は例。音楽ファイルの演奏とストップができる。
Private Sub Form_Load()
  WindowsMediaPlayer1.URL = "C:\WINDOWS\Media\town.mid" '←鳴らしたい音楽ファイルを指定
End Sub
Private Sub Command1_Click()
  WindowsMediaPlayer1.Controls.play 'プレイ
End Sub
Private Sub Command2_Click()
  WindowsMediaPlayer1.Controls.stop 'ストップ
End Sub
0623名無しさん@そうだ選挙に行こうNGNG
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)

If CloseMode = vbFormControlMenu _
Then
MsgBox ("×ぼたんでは閉じれませんよん♪")
Cancel = True
End If

End Sub
0624名無しさん@そうだ選挙に行こうNGNG
>>618
そんなセキュの甘いサーバーあるのか?
あるわなそりゃ
0625624NGNG
あぁ。smtp鯖のクライアント機能みたいなことするってことか。
0626デフォルトの名無しさんNGNG
>>616
やったことないからわからんけど
LDAP使ってもだめなん?
WindowsだとブラウザのHTTP://の部分をLDAPにかえてやるとたしかできたような
UDPつかったりして方法はあると思うんだけど・・・

あんまり役に立たんね。スマソ
0627723NGNG
こんばんは。
「アプリケーションの追加と削除」に表示されているサイズ情報を
VB上で取得したいんですが、どんなに調べてもやり方がわかりません。
どなたか知恵を貸してください!!
お願いします!!
0628デフォルトの名無しさんNGNG
DLLの使用方法で質問があります。

int hage(char*,char*,int,int)
(第1引数を戻り値として返す)

という関数を使う場合、標準モジュールでの宣言はどうすれば
よいのでしょうか。
よろしくお願いします。
0629デフォルトの名無しさんNGNG
>>628
引数がどのように使われているのか、使いたいのかによる。
そのDLL関数の内容がわからないと答えようがない。

char*がバイトの値を返すなら「ByRef a as Byte」だし、
領域へのポインタなら「ByRef a() as VBで使いたい型」とか。
ポインタを直接渡したいなら「ByVal a as Long」だってありだろ。
0630デフォルトの名無しさんNGNG
>DLL関数の内容がわからないと答えようがない。
んなこた〜ない。

ていうか、>>628も少しは調べるとかしたら?
試し“vb 自作dll”で検索してみたけど、参考になりそうなところが
ザクザク引っかかるんですけど。
そうでなくても、Vbの解説してるサイトなんて腐るほどあるってのに。

私しゃ、君みたいな横着な奴にはマジで殺意抱くね。

【答え】
Public Declare Function hage Lib "dllの物理ファイル名" _
(ByRef a as byte, ByRef b as byte, ByVal c as Long, ByVal d as Long) as Long
0631デフォルトの名無しさんNGNG
VB6.0 Professionalの入ってるマシンにVB.NETアカデミックをインスコしたら
VB6.0のリッチテキストを使おうとするとライセンスがありませんと出るようになった。
両方ともProfessional以上で統一しないとダメなようだ。
0632デフォルトの名無しさんNGNG
VB6.0用の Doxygen みたいなツールないでしょうか?
有料だと Project Analyzer とか VB仕様書工房 とか
あるみたいなんですけど、無料のものを探してます。
0633デフォルトの名無しさんNGNG
>>590
しね
0634デフォルトの名無しさんNGNG
>>606
なんだかんだ言われてもMSDNが見れないのは、事実。
0635297NGNG
VB6を再インストールしたら、調子よくなりました。
どうやら、VB6のあとに.NET2003Proを入れたのが
悪かったようです。
DataEnvironmentをちょっといじっただけで症状が
再発したのには参りましたが勉強になりました。
0636デフォルトの名無しさんNGNG
>>634
>>603は?
0637デフォルトの名無しさんNGNG
2chに書けてもMSDNが見られないというのは、これ如何に?
0638デフォルトの名無しさんNGNG
もうそっとしといてやりなpgr
0639デフォルトの名無しさんNGNG
>>637
iモードでMSDNがみれるのか?おまえは
0640デフォルトの名無しさんNGNG
>>639
このスレから消えてください。
おながいします。
0641デフォルトの名無しさんNGNG
便乗質問なのですが、

>>603
から辿って行って、
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/odeopg/html/deovrworkingwithmicrosoftexcelobjects.asp
に、

>すべての Excel オブジェクト モデルは、『Microsoft Office 2000 オブジェクト モデル ガイド』で参照することができます。

とありますが、クリックすると、以下のJScriptエラーになります。

>エラー: 'hhobj_1' は宣言されていません。

これって、ウチだけですか?皆さんのところではどうですか?
見ることができる方法があったら教えて下さい。

0642デフォルトの名無しさんNGNG
>>641
マカーの漏れにはクリックすら効かなかったよ。(´・ω・`)
0643デフォルトの名無しさんNGNG
>>641
だから、iモードだって言ってるだろ!
0644デフォルトの名無しさんNGNG
そうか、それはたいへんだね。
もう来なくていいよ。
0645デフォルトの名無しさんNGNG
そこでTELNETの登場でつよ
0646デフォルトの名無しさんNGNG
ヴァリスは難しいよ。
0647デフォルトの名無しさんNGNG
それは日本テレネット。
0648デフォルトの名無しさんNGNG
>641
確かにJScriptは動かないがMSDNサイト内を探せばあるぞ。
ttp://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/odeomg/html/deovrobjectmodelguide.asp
が表紙だ。

>646
古すぎて誰も分かんねぇよ!!(w
0649デフォルトの名無しさんNGNG
>>648
ここには知ってる奴ごろごろ居そうw
0650デフォルトの名無しさんNGNG
VBからデータベースを読んで印刷するシステムを作ろうと思っています。
条件は
・VB6.0から制御できる
・縦書きレポートが出力できる
やりたいことは贈答用の「のし」を印刷したいのですが
なかなか縦書きできるソフトが見つからないのです。
お勧めのツールってありますかでしょうか?
よろしくお願いします。
0651デフォルトの名無しさんNGNG
>>650
Word
0652650NGNG
本当にネタではなくWordでいいんでしょうか?
グレープシティのActiveReportかソフトウィングのWingReport
などを候補に入れていたのですが。
0653デフォルトの名無しさんNGNG
Word
0654650NGNG
わかりました やはりWordなんですね。
挑戦してみます。(Wordで印刷というのは一般的なのでしょうか?)
ありがとうございました。
0655デフォルトの名無しさんNGNG
いや、ごめん。
製品としてよそに出すならダメだと思うよ。
自分や身内で使うのに動けばいいだけなら、いいと思うけど。

帳票作成用のコンポーネントなんかは、
縦書きサポートしていなさそうだけど、詳細は知らんから、
評価版ダウンロードして試せばどう?

どんなの印刷したいのか知らないけど、
ものによっては、自分で一文字ずつ位置を決めていって、
自力で印刷するだけで済むと思うけど、
そんなんじゃダメなら、帳票にこだわらないで縦書き印刷の
コンポーネントでも探せばどう?
0656デフォルトの名無しさんNGNG
>>650
小規模なシステムなら、VBからWordやExcelに出力して
「印刷ボタンを押してね」というのは現実的な選択。
大規模なら、きちんとしたコンポーネントなりを使った方が
いいんじゃない!?と思ったが・・・
「のし」の印刷は聞いたこと無いな・・・。
意外にWordというのはネタじゃないかもな。
絵柄なんかは固定でテンプレートにしとけばいいし。
0657デフォルトの名無しさんNGNG
印刷にWordやExcelを使うのは、ある意味非常に現実的な解だ。

>>655も書いてるが、プログラムを実行する環境にWordやExcel
があるのなら、それを使わない手はない。パッケージソフトと
して販売する予定なら現実的ではないが(販売してもいいけど、
売れないだろうね)印刷に納入先PCに入ってるWordを使う事と、
Word必須が動作条件になる事に対してのコンセンサスが納入先
と取れていれば何ら問題ない。

俺は最近IEを印刷に使ってる。ソフト側でHTML吐かせて、HTML
ファイルをNavigateメソッドで表示させて、ExecWBメソッドで
印刷プレビュー表示させる。

.Topプロパティと.Leftプロパティを充分画面外の座標に設定
すれば、印刷プレビューだげがデスクトップ上に表示されて
いい感じ。

IEならWordやExcel以上にPCに入ってる率が高いからね。
0658デフォルトの名無しさんNGNG
文字だけの印刷ぐらいならば、何もツールは使わずVBだけでできるはず。
0659デフォルトの名無しさんNGNG
なんでもかんでもツールに頼るのはよくない。
0660デフォルトの名無しさんNGNG
Click DblClik イベントでマウスのどっちのボタンが押されたかを知るにはどうしたらいいのでしょうか?
0661MSDNライブラリNGNG
メモ マウスの左ボタン、右ボタン、中央ボタンを区別する必要があるときは、
MouseDown イベントおよび MouseUp イベントを使います。
0662デフォルトの名無しさんNGNG
>>661
ガーン DblClickじゃできないのかぁ。
0663デフォルトの名無しさんNGNG
>>662
直前にダウンされたボタンをグローバルで覚えておいても駄目かな?

(っていうか、まんなかみぎをだぶるくりっくするなんて、糞仕様なような)
0664デフォルトの名無しさんNGNG
>>660
Private MouseButton As Integer
Private Sub Form_Click()
Select Case MouseButton
Case vbLeftButton
Debug.Print "左ボタンクリック"
Case vbRightButton
Debug.Print "右ボタンクリック"
End Select
End Sub
Private Sub Form_DblClick()
Select Case MouseButton
Case vbLeftButton
Debug.Print "左ボタンダブルクリック"
Case vbRightButton
Debug.Print "右ボタンダブルクリック"
End Select
End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
MouseButton = Button
End Sub

>>663
誰もが勘違いすることだけど、それだと同時押しに対応できないからMouseUpイベントで。
0665デフォルトの名無しさんNGNG
ダブルクリックの検出にはタイマーを使うんだよ
0666デフォルトの名無しさんNGNG
OS側がな
0667デフォルトの名無しさんNGNG
おいおいOS側ってなんだよ
さすがVB棒
http://www.doumo.jp/aon-java/jsp/postgretips/tips.jsp?tips=34
0668デフォルトの名無しさんNGNG
>>667
おいおい・・・バカにつける薬は無いな
0669デフォルトの名無しさんNGNG
>>667
?それはダブルクリック処理を行うときにシングルクリック処理を行わない場合のサンプルじゃないのか?
0670デフォルトの名無しさんNGNG
ごめんなさい。昨日2時間しか寝てないので・・・
0671デフォルトの名無しさんNGNG
まあ、イベント順の部分は確認できて参考になるじゃない。
0672デフォルトの名無しさんNGNG
テキストボックスの
水平スクロールバーの値を取得するにはどうすれば良いでしょうか?

> SendMessage(RichTextBox1.hwnd, EM_GETTHUMB, 0, 0)

これで、垂直スクロールバーの価は取得できるのですが。。。

よろしくお願いします。
0673デフォルトの名無しさんNGNG
EXEを起動して、EXEの上にマウスポインタを表示させないようにするには
どうすればいいんですか?
教えて下さい。
0674デフォルトの名無しさんNGNG
>>672
HもVも同じサイズじゃないの?SysinfoコントロールにもScrollBarSizeしかないし。
0675デフォルトの名無しさんNGNG
>>673
Form上だけマウスを消すの?
Form1.MouseIconに透明なアイコンつっこんで
Form1.MousePointer=99でいくない?
0676641NGNG
>>648
遅レスで申し訳ないですが、
ありがとうございました。
0677はちみつ六郎NGNG
メニューエディタで割り当てたメニューのショートカットを
実行時に取得することはできないんでしょうか。
プロパティウインドウにはShortcutプロパティがあるのに、コードのエディタでは
プロパティの一覧に含まれていません…
取得とあと変更(カスタマイズ)がしたいんですが。。
0678デフォルトの名無しさんNGNG
VBで作ったActiveXでcabファイルの中にファイルを追加して
Destdir=10や11としているのですが、ディスクにコピーされません。
なぜなのでしょうか?
0679デフォルトの名無しさんNGNG
超素人で申し訳ありません。テキストファイルへの書き出しなのですが、
”末尾の位置を揃える”形で出力したいのですがなかなか出来ません。

a=2313,b=-1,c=114の場合、

2313
-1
114

という具合にしたいのですが、print #1, Format(a,######)とかやっても

2313
-1
114

という風に出力されてしまいます。お馬鹿な質問で申し訳ないのですが
お馬鹿とか言わずに教えてください。おながいします。
0680679NGNG
○
s2313
sss-1
ss114

×
2313
-1
114

です、sは半角スペース1個のつもり
すんません。
0681デフォルトの名無しさんNGNG
>>679
数字の文字列の長さをだして
そこから幾つスペースを入れれば良いのか計算すれば?
len()とかspace()使えばできると思う。
0682はちみつ六郎NGNG
>>679

RSetステートメントも使えるかも。

Dim BufAs String

Buf = Space$(5)
RSet Buf = Format$(a,######)
0683はちみつ六郎NGNG
Format$(a,#####)はCStr(a)でいいね
0684679NGNG
>>681-683 ありがたい。即やってみる。
0685はちみつ六郎NGNG
そして>>677もよろしくお願いします。
0686デフォルトの名無しさんNGNG
>>685
ショートカットって意味わかんないんだけど、
ひょっとしてショートカットキーのこと?

だとしたら出来ないんじゃないの?
ていうか、状況によってショートカットキーが変わるって
正直糞アプリとしか思えない。
0687デフォルトの名無しさんNGNG
現在、文字列のSJISコードを返すのに

Dim strText as String
strText = "あ"
debug.Print Hex$(Asc(strText)

とやってます。(”あ”と入れたのはたとえです。)
この計算式で値を取得するのと、StrConv関数でSJISに文字を変換した後Byte型にデータを流し込んで取得する値とでは
どう違いますか?

もし採用するとしたらどちらがいいでしょうか。

Win2000Pro SP4
VB6 SP5です。
0688はちみつ六郎NGNG
>>686
はいショートカットキーのことです。
「ショートカットキーのカスタマイズ機能」をつけたいんですよ。
これはユーザーの好きなキーを割り当てられるってことで有用な機能だとぼくは思ってます。
まあ人によるでしょうが。
0689デフォルトの名無しさんNGNG
>>679
もう回答出てるけど、古典的手法としてはこんなのも。
writestr = Right$(Space$(MAXWIDTH) + Str$(VALUE), MAXWIDTH)
0690デフォルトの名無しさんNGNG
>>687
自分で試せ。

結果が一緒で、かつ1文字1文字変換していって速度的に問題ないなら、Ascでいい。
どちらかかが駄目ならStrConvしかない。
0691デフォルトの名無しさんNGNG
>>687
あなたの例じゃ1バイト目のみが変換されるんじゃないの?

どの程度文字コードの知識があるかによるけど、きちんと勉強すればわかるし、
きちんと勉強しないでとりあえず作ると、あとで大体痛い目にあうよ。

多分だけど文字コード変換が必要なのって他システム連携じゃない。
問題発生したときにあやふやな知識だと大変だよ。
0692デフォルトの名無しさんNGNG
グリッドで、Fixedの色と同じ状態にグリッド全体をしていのですが、
どのようにすればいいのでしょうか?

色は、灰色で、境が白と黒といった感じです。
0693デフォルトの名無しさんNGNG
ど素人ですいません。
あるフォルダを、別のところにランダムな数字を付加したフォルダ名でコピーしたいと思い、

Option Explicit
Dim objFS
Set objFS = WScript.CreateObject("Scripting.FileSystemObject")

randomize
x = int(rnd*50000)
dry = "C:\Documents and Settings\Administrator\Testfolder" & x & "testtest"
objFS.CopyFolder "C:\Documents and Settings\Administrator\Testfolder\testtest",dry, True

を実行しようとすると、
エラー: この変数は宣言されていません。 : 'x'
というエラーメッセージが出るのですが、文法的に間違っているのでしょうか?
0694デフォルトの名無しさんNGNG
何をしたいのか分からんが>>692の仕様を実現してみた。

Private Sub Form_Load()
 With Me.MSFlexGrid1
  .Rows = 5
  .FixedRows = 4
  .Cols = 6
  .FixedCols = 5
  .ColWidth(5) = 0
 End With
End Sub

>>693
間違っている。Option Explicitステートメントをヘルプで調べなさい。
0695693NGNG
>>694
ありがとうございます。調べてみます。
0696デフォルトの名無しさんNGNG
EXCELのデータをCSVで書き出す処理で困っています。
時間(19:10等)がCSVファイルではシリアル値になってしまいます。
書き出しの方法はコードは以下のとおりです。
尚、シートの時間が入っているセルは書式設定で時刻にしています。
どなたか良い智恵をお貸しください<m(__)m>

For i = 1 To maxRow
myRecord = ""
For j = 1 To 9
If j = 1 Then
myRecord = Sheets("書き出しCSV").Cells(i, j)
Else
myRecord = myRecord & "," & Sheets("書き出しCSV").Cells(i, j)
End If
Next j
Print #1, myRecord
Next i
0697デフォルトの名無しさんNGNG
Call MsgBox("テスト", vbCritical + vbOKOnly, AppName)

exe実行だとここんとこで実行時エラー91になるんですけど・・・
0698693NGNG
>>694
ちゃんと動きました。
どうも、ありがとうございました。
0699692NGNG
>>694
FixedRowsやFixedColsで指定したセルは、その色になるのは当然です。
つまり、それ以外のセルを Fixedで指定した色にしたいのです。
0700デフォルトの名無しさんNGNG
>>696
excel上でもデータはそのシリアル値で保持されててexcelの
機能的に書式していで時刻表示しているなら、csv出力も
formatで書式していした文字列を作ってそれを出力したらどうかと・・
0701697NGNG
Form_Load内だとダメみたいです。なぜでしょう・・・
0702デフォルトの名無しさんNGNG
>>697
AppNameってのがとても気になる。

>>698
何をどう修正したら動いたのか気になるがまぁいいや。

取り敢えずあれだ、ヘルプで「変数、定数、およびデータ型」
って項目と、その関連項目を熟読するといいよ。
0703デフォルトの名無しさんNGNG
>>696
見たところCSVで保存するルーチンを自作しているみたい
だけど、単にCSVで保存したいだけなら、WorkBookオブ
ジェクトにあるSaveAsメソッドを使えばいいと思う。

SaveAsメソッドは、ファイルの保存形式を指定出来るか
ら、CSVで保存する事も出来るよ。
0704697NGNG
>>702
AppNameってとこ"ABC"にしてもダメでした・・・
0705デフォルトの名無しさんNGNG
>>704
ホントにそれ原因か?
その行をコメントアウトしたらエラー出ないの?
0706697NGNG
>>705
そう、コメントにしたら出ないのでこれです。
0707デフォルトの名無しさんNGNG
>>696
×Cells(i, j)
〇Cells(i, j).Text
0708デフォルトの名無しさんNGNG
TabStripの使い方を教えてください。
VB6のSP4です。
今、どのタブになっているかとか、何を見て判断すればいいのでしょうか?
0709デフォルトの名無しさんNGNG
>>706
まぁ、あれだ。VBを立ち上げて「標準EXE」を新規作成して、

Private Sub Form_Load()
Call MsgBox("テスト", vbCritical + vbOKOnly, "ABC")
End Sub

とだけ書いて、コンパイルして実行してみな。エラーが出なかったら、

Call MsgBox("テスト", vbCritical + vbOKOnly, "ABC")

には問題が無い、と言う事になる。

#エラーは常にエラーの発生している行にあるとは限らない。
0710デフォルトの名無しさんNGNG
>>702
俺も気になる。

>>697
のやりたいことは、
Call MsgBox("テスト", vbCritical + vbOKOnly, App.EXEName)
じゃないのか?

0711デフォルトの名無しさんNGNG
>>708
どのタブが「選択」されているか知りたいんだよな?

ヘルプやオブジェクトブラウザで、TabStripコントロールの
プロパティを眺めてみよう。それらしきプロパティは唯一つ
だと思う。
0712デフォルトの名無しさんNGNG
ListViewを使っているのですが、ボタンを押すとListViewが表示されるみたいな感じ
で、項目のサイズを決めてるのですが最大化したときにボタンを押すと
ListViewの項目のサイズが倍近く大きくなってしまいます。
どなたか知ってる方いたら教えてください。
お願いします。

WIndowsXP VisualBasic6.0です
0713697NGNG
>>709
確かに、
Call MsgBox("テスト", vbCritical + vbOKOnly, "ABC")
だけのプログラムだとエラーはでません。
ですが、この部分を含んでいる大きなプログラムでは出ます。
私もなぜこんなところでエラーが出るのか、それもEXE実行の場合のみ、
しかもエラー91・・・意味不明です。
0714デフォルトの名無しさんNGNG
大体さ、>>697は何でそこでと断定できるんだ?
まず、メッセージボックスは出てエラーなのか、出ないでエラーなのか?
ファイルかなんかにログ吐かせて、どのステップまでいってるか確認してみたら?

なんか、実はその前の部分でこけてるんじゃないかと思ったりする。
0715697NGNG
>>714

End ← 1回目
Call MsgBox("テスト", vbCritical + vbOKOnly, "ABC")
End ← 2回目

1回目…そのまま終了
2回目…エラー
0716デフォルトの名無しさんNGNG
http://www.gj.il24.net/~nakasima/vb/tips/
暗黙に作成されるフォームを(しか)使用できなくする

これじゃない?
0717696NGNG
>>700
出来ました。有難うございました。
0718696NGNG
見落としてました。すみません。
>>703 あるシートの一部のみCSVにするためあのような処理にしました。
>>707 この方法も試してみます。

みなさん、有難うございました<m(__)m>

前回sage損ねた・・・_| ̄|○
0719デフォルトの名無しさんNGNG
作成したEXEを常に最前面に出すという処理なんですが、
最前面にも関わらず、マウスポインタは表示されてしまいます。
どうすればいいのかわからないので教えて下さい。
0720デフォルトの名無しさんNGNG
>>719
>>675
0721デフォルトの名無しさんNGNG
既存のVB6アプリにしたって、移行するタイミングは悩むよな。
VB6アプリではまともに動かない環境が出現するころには、
.NETの方も今とは相当変わってそうで・・・
0722721NGNG
ごめん。誤爆した。
0723デフォルトの名無しさんNGNG
>>722
> ごめん。誤爆した。

こちらの私の書き込みへのRESでしょうか。w

【VBユーザー】あなたはVBを使い続けますか?@プログラマー
http://pc5.2ch.net/test/read.cgi/prog/1072332132/139
0724デフォルトの名無しさんNGNG
グリッドで入力できるセルと入力できないセルの区別をしたいのですが、
どうすればいいのでしょうか?
0725デフォルトの名無しさんNGNG
>>724
何のグリッドを使ってるかによるけど。

まず、見た目で入力不可はグレーとかにしておく。
入力不可なんだから、当然そのセルでは入力モードにならないようにしておく。

これ以外にあるのか?
0726デフォルトの名無しさんNGNG
グリッドのセルへの入力で、IMEの制御は、どのようにすればいいのでしょうか?

オフ固定とか、全角ひらがなにするとか・・・。
0727726NGNG
行単位で、制御したいのですが・・・。
0728697NGNG
>>716
確かにプログラム内でオブジェクト使ってますが、
Call MsgBox("テスト", vbCritical + vbOKOnly, "ABC")
では参照も何もしてませんので違うかと
0729デフォルトの名無しさんNGNG
>>727は>>724と同じ人だと思うけど。
まず、何のグリッドを使っているかきちんと書いてくれ。

で、VB付属のグリッドは所詮おまけだ。
入力制御とか凝るのならば、市販のものを買う。
0730デフォルトの名無しさんNGNG
>>728
メッセージボックスって暗黙で親フォームのウィンドウズハンドルを参照してるのでは?
SystemModalだと違うかもしれないけど(APIの場合だと親をNULLにできるけど。)
0731デフォルトの名無しさんNGNG
include文の中で変数を使うにはどのように記述したらよいのでしょうか、
不躾な質問ですみません OTL
0732デフォルトの名無しさんNGNG
マウスを動かす速度によってマウスポインタを表示するっていうことは可能ですか?
可能の場合、やり方も教えて頂きたいのですが…
0733697NGNG
>>730
Form_Load時はMsgBoxがフォームを参照できないから落ちていると?
0734デフォルトの名無しさんNGNG
>>725

>当然そのセルでは入力モードにならないようにしておく。

どうすれば、入力モードにならないのでしょうか?
0735デフォルトの名無しさんNGNG
グリッドによってやり方が違うのならば、知っているグリッドで教えてください。
0736デフォルトの名無しさんNGNG
>>733
VBのフォームロードって、フォームのインスタンスが生成された後に呼び出しでしょ?
Initializeがインスタンスの生成時、でその後にフォームのロード。
0737697NGNG
>>732
MouseMoveイベントで常にマウスの座標を取得して、
前回取得したX,Yと今回取得したのを比較して、
表示するかしないかを決めればよいのでは?
0738デフォルトの名無しさんNGNG
>>735
つうか、自分が使ってるものをまず書けと。

グレープシティーの奴とかで駄目なのか?
あそこぐらいは調べるのは常識の範疇だと思うんだけど。トライアルも落とせるし。
0739デフォルトの名無しさんNGNG
>>697
MsgBoxが原因とは思えないんだが、わからんね。

使っているActiveX DLLとかで怪しげなメモリアクセスをしていたりしない?
たまたま、MsgBoxを実行する際に発症するんじゃないかと
思うんだけど・・・
他に初期化しているオブジェクトとかがあれば、
その処理をいったん外してみるとか・・・
0740デフォルトの名無しさんNGNG
>>728
取り敢えずあれだ、F8キーでMsgBoxの行までステップ実行して
コードがどの順序で実行されているか調べろ。

んで、実行されている部分に1行毎に、ファイルに何か文字列を
出力するコードを埋め込め。記録する文字列は全部ユニークな
ものにしろ。(開発環境でもエラーが出るのなら、Debug.Print
を使えばいいのだが、今回のようにEXEだけで発生する場合には
使えないからなぁ。)

コンパイルして実行して、エラーが出たら、ログを見てどこま
で記録されてるか見ろ。

訳のわからんエラーの場合は、兎に角どこまで動いてて、どこ
から動いてないのかを逐一見るしかないよ。コードが>>728の
手許にしかない以上、デバッグせなならんのは>>728なんだからな。

>>733
ちょっと待て。>>736の書いているとおりだぞ。

マジな話、ヘルプの「Visual Basic フォームの有効期間」を
熟読しといた方がいいよ。あと、>>716の書いてるサイトは
この辺の話を例を挙げながら分かりやすく書いてあるよ。
0741デフォルトの名無しさんNGNG
>>739
そうだよね、バグが再現する最小のプログラムと最小のオペレーションを詰めていくのがまず一歩目かと。
これ以上削ったら再現しないっていう線がわかれば、自動的に解決じゃないですか。
大変だけど。w
0742697NGNG
>>739
オブジェクト(そのフォーム内のみ)を外してみたけどダメでした。
ActiveXもコールしますがMsgBoxより後です。
Form_Initializeではエラー出ませんでした。
0743697NGNG
>>739
オブジェクト(そのフォーム内のみ)を外してみたけどダメでした。
ActiveXもコールしますがMsgBoxより後です。
Form_Initializeではエラー出ませんでした。
0744デフォルトの名無しさんNGNG
>>743
ActiveXを取るとどうなる?
0745697NGNG
>>740
1行毎にテキストファイルに記録するしてみたところ、
MsgBoxより数行進んでました。
で、その行は、

  For i_Index = 0 To 8

でした。
ますますわかりません。(;つД`)
0746デフォルトの名無しさんNGNG
そのFor文の中が原因じゃないの?
0747デフォルトの名無しさんNGNG
>>745
つか何故泣く。真相に迫って来たではないか。
>>746の言うとおりForループの中が怪しげだな。
0748デフォルトの名無しさんNGNG
問題部分をとりあえずコメントアウトして動くか?
で、それを徐々に外していってどこでこけるか。

EXEでしか起こらない場合は、昔のデバックみたいだけどそういうやりかたしかない。
まあ、がんばってー。
0749697NGNG
ForToNextの内容はこうです。

For i_Index = 0 To 8

Select Case mu_System.b_Menu(i_Index)

Case 0: btProcess(i_Index).Enabled = False
Case 1: btProcess(i_Index).Enabled = True

End Select

Next i_Index

ありえない・・・
0750デフォルトの名無しさんNGNG
>>749
msgboxの前の処理になんかあるんじゃないの?

なんか、その前の処理問題があって、たまたまmsgboxのところで出てるとか
0751デフォルトの名無しさんNGNG
単純に、そのmu_System.b_Menuってきちんと0から8まであるのか?
とか、少し前にも書いたけど、中身をコメントアウトしてFor文回してもエラー?
0752697NGNG
>>751
ちゃんとあります、もしなかったら普通にエラーかと
0753デフォルトの名無しさんNGNG
mu_Systemってのはなんだろう?
btProcessってのはコマンドボタンかな?

何れもコントロール配列になってるっぽいねぇ。

ここのForループをコメントアウトすると
どうなるんだろう?
0754デフォルトの名無しさんNGNG
>>752
いや、だからその配列内に格納されているオブジェクトの実体が・・・。
エラーの内容がオブジェクトがないと言ってるわけなんで。

で、コメントアウトして回しても駄目なの?
0755697NGNG
ForToNextを外してもエラーになります。
MsgBoxを外すとエラーになりません。
でも740さんのファイル記録だとForToNextの行でエラーなんです。
0756デフォルトの名無しさんNGNG
>>755
メッセージボックスの前で、
ファイルに、formhoge.hWndをCstrで変換したものを出力してみて、それが出る?
0757デフォルトの名無しさんNGNG
>>745
おかしいな・・・・
>1行毎にテキストファイルに記録するしてみたところ、
>MsgBoxより数行進んでました
MsgBoxの先?MsgBoxが表示されると止まるはずだけど・・・

因みに昔同じ現象食らった。
それ以来MsgBoxは結構怖くて(ワラ
そのときの対処法?自分でダイアログ作りますた。
0758デフォルトの名無しさんNGNG
テキストのキャレットの高さを調べたいのですが、
APIで実現できるのでしょうか?

よろしくお願いします。
0759デフォルトの名無しさんNGNG
MessageBox APIに置き換えて見るとか?w
0760デフォルトの名無しさんNGNG
>>758
キャレットの高さ=フォントの高さじゃない?
0761758NGNG
>>760
フォントの高さというのは、どうすれば取得できるのでしょうか?
「GetTextExtentPointA」を使用するのでしょうか?

何度も申し訳ないです、よろしくお願いします。
0762デフォルトの名無しさんNGNG
>>758
GetGUIThreadInfo
0763デフォルトの名無しさんNGNG
>>697
こんな条件なら言っているようなことが起こると思う。

1) 開発環境と実行環境でOSが異なる。(開発環境:9x系 / 実行環境:NT系)

2) フォームのロードイベントのMsgBoxの行以降で、何らかのオブジェクトの
  生成または初期化を行っている。

3) タイマを使っていて、タイマのイベントハンドラでその何らかのオブジェクトに
  アクセスしている。
0764デフォルトの名無しさんNGNG
>>761
フォントの高さならTextHeightもあるが?
0765デフォルトの名無しさんNGNG
今更だが・・・

>684
Format$(Cstr(HogeHoge), "@@@@@")
と言うのもある。
0766デフォルトの名無しさんNGNG
はじめまして。
このスレがあるの知らずにEXCEL・VBAの勉強法を教えて?のスレにも
同じこと書いてしまったんですが・・・教えてほしいことがあります。

EXCELのVBAでセル内書の文字列からある特定の文字数をカウントする
命令をご存知でしょうか?

例えばセル内に「AABCAABC」という文字列が入力されていたとして、
この文字列中からBの出現回数=2という具合に出現回数を求めたいんです。

ご存知のかたよろしくお願いします。
0767超適当NGNG
>>766
s = "AAABCAABC"
l = Len(s) - Len(Replace(s,"A",""))
0768デフォルトの名無しさんNGNG
英語版windows xpで動作するVBプログラムを作りたいのですが、
日本語版windows xpと日本語版VB6.0しか持っていません。
日本語フォントを使わずにコンパイルすれば英語環境でも動くでしょうか?
0769デフォルトの名無しさんNGNG
>>768
動くか否かと問われれば動くが、色々注意する点があるし、お勧めできない。
0770デフォルトの名無しさんNGNG
>>766
googleで「MOUG」を検索
0771デフォルトの名無しさんNGNG
>>768
まず、ヘルプの多言語対応を読む。
基本的にはそこの記述を守れば動く・・・・はず。なにせMSのやることだから。

0772デフォルトの名無しさんNGNG
>>768
ANSIのデータのみ取り扱うと割り切るなら動くと思うよ。

XPなら、地域のオプションで、「UNICODE対応でない
プログラム言語」を英語(US)に設定して再起動すれば、
取り敢えず英語版Windowsに近い環境は得られるので、
VBで作ったEXEのデバッグも出来る。

ただ、英語(US)な環境で日本語版VBを起動するのは
他人にはお薦めしない。まぁ動く事は動くんだけどね。

正直言って、バイリンガルやマルチリンガルを真剣に
やるなら、VB.NET(と言うか.NET Framework)の方が
楽よ。あれで多国語なアプリを一度作ると、もう後戻り
出来ないねぇ。
0773デフォルトの名無しさんNGNG
>>772

> ただ、英語(US)な環境で日本語版VBを起動するのは
> 他人にはお薦めしない。まぁ動く事は動くんだけどね。

なんでー?いつも、英語版 OS 上に日本語アプリをインストール
してるけど、別に問題起きたためしがないよ。
0774デフォルトの名無しさんNGNG
>>773
あなたはプログラマ?
少々VBやってれば何故かわかるはずだが。
0775デフォルトの名無しさんNGNG
>>773
英語版Windows上で日本語版VBを起動すれば分かる筈だが。
0776デフォルトの名無しさんNGNG
私も少々VBやってるけど、問題ないほうに一票。
ただし、VBの開発環境入ってるPCに、言語バージョンが違うVBのアプリ
インストールする場合は除く。
0777デフォルトの名無しさんNGNG
昔はよく海外製のソフト入れるとDLLが英語版になったりしたよな
0778772NGNG
>>768
あと、インストールパッケージは、ディストリビューション
ウィザードを使ってもいいけど、他言語ロケールに対応させる
のが結構鬱陶しい(やり方はMSのサイトに書いてあるし、必要な
ファイルも置いてあるんだけどね)

ので、Visual Studio InstallerをDLしてきてWindows Installer形式の
パッケージを作った方が遥かに楽だと思う。
0779デフォルトの名無しさんNGNG
>>776
確かVB6のランタイムって、英語版DLL+各国語リソースDLLって形
になってたよな。だもんで、過去のVBに比べればその辺は影響少な
いんじゃないかなと思ってたり。

VB2辺りの頃は、しょっちゅう>>777の状況に陥ったけどなぁ。VBだけ
じゃなかったけど。
0780デフォルトの名無しさんNGNG
あとはOCXだが、VSIがラクだよな
0781768NGNG
皆さんありがとうございました。
おそらく動くだろうということで進めてみることにします。

OCXとかもがんがん使ってるんですけど、systemディレクトリじゃなくて、
アプリのディレクトリに入れとけば英語版windows環境を壊したり
することはないですよね?
0782デフォルトの名無しさんNGNG
>>781
MSに聞かないと、我々が大丈夫だと言ってもしかたがないだろ。
0783デフォルトの名無しさんNGNG
>768
お前がどういう物を作ってるのか詳しく説明しない以上、
自分でトライ&エラーしかないだろう?

それともこのスレの言質が欲しいのか?
んじゃオレが言ってやるよ。
だいじょーぶだ〜〜〜いじょうぶ!!も〜〜バッチリ!!!!キミって天才!!
0784デフォルトの名無しさんNGNG
言質
「げんち」って読むのか・・・

はじめて知る言葉だよ
0785はちみつ六郎NGNG
>>766
たぶんそんな関数はないから自作。
Instr関数をループで回して簡単にカウントできるよ。
0786デフォルトの名無しさんNGNG
俺はこのスレで、VisualStudio6.0ProとVisualStudio.NET2003Proが
同じPCで共存できると聞いて喜んでインストールしたのに大失敗。

>>768

最後は自己責任ですよ。
0787デフォルトの名無しさんNGNG
mdb形式です。
メールのDBなんですが、フィールドが
 メール番号(数値型)
 件名(テキスト)
 投稿日(日付型)
 投稿時間(時間型)
 投稿者(テキスト)
 内容(メモ型)
ってふうになっています。

年間、月間、日毎の投稿数を調べる場合、
投稿日のフィールドを、年、月、日にわけるしか
ないのでしょうか?
0788デフォルトの名無しさんNGNG
>>787
投稿日から年、月、日を取得することは初歩的な関数で可能。
0789デフォルトの名無しさんNGNG
>>787
初めてのAccessとかSQL入門とか買って来い。
0790デフォルトの名無しさんNGNG
マウスの移動範囲を設定したいのですが、やりかたがよく分かりません。
X、Y軸共に0〜500の間でしか移動できないようにしたいのですが、
どうしたらよいのでしょうか?
0791デフォルトの名無しさんNGNG
はじめまして。
データベースのデータのリストを表示するためにBOC社のSpread Ver3.0Jを使って
みようと思っています。
各行にオプションボタンの代わりにチェックボックスを配置していて、一つのチェ
ックをつけた時に他の行のチェックを全て外すようなプログラムを作ろうとしてい
るのですがどのプロシージャにコードを書けばいいのか悩んでいます。GotFocusや
LostFocusかと思ったのですが違うようです。初めて使用するツールでわからない
事が多く苦労しています。ご存知の方がいましたら是非教えてください。
0792デフォルトの名無しさんNGNG
>>790
APIのClipCursor関数を使うのがいいかな。
参照↓
ttp://www.vbvbvb.com/jp/gtips/1001/gClipCursor.html
0793デフォルトの名無しさんNGNG
>>792
ありがとうございます。参考にしてみます。
0794デフォルトの名無しさんNGNG
>>791
AfterCellChangeとかないのかか?
ヘルプのイベントを全て見た?
0795697NGNG
>>763
解決しました!ありがとうございます!!
原因は�Bでした、MsgBox以降でタイマーのEnabled=Trueで発生しなくなりました。
0796デフォルトの名無しさんNGNG
>>794
レスありがとうございます。付属の解説書には掲載していませんでした。
ButtonClickedプロシージャで
For i = 1 To Spread.MaxRows
Spread.Row = i
Spread.Value = "0"
Next i
を入れてみたのですが、値を変えると再び同じプロシージャに入ってしまい無限
ループになってしまいました。
0797デフォルトの名無しさんNGNG
>697
ここまで引っ張っといてヘラヘラ喜んでんじゃねぇ!!
たまたま>763が例をあげてくれたからいい様なものの、
お前タイマー使ってるなんて一言でも説明したか?
お前がオレの後輩だったらぶん殴ってるぞ。
0798デフォルトの名無しさんNGNG
>796
そのプロシージャには引数ないのか?
.MaxRowsというプロパティがある以上、各Rowの集合体はCollectionに
なってるんじゃないか?
出なけりゃお前がやりたい事以外でも、
Row単位での制御は何も出来ないという事になってしまうぞ。
そんなクソControl売ってる訳ないしな。

原点に立ち返って、標準のListBoxでもCheckBox出せるんだから、
そこら辺から勉強し直せ。
0799デフォルトの名無しさんNGNG
>>798
イベントプロシージャに引数はあります。
ButtonClicked(ByVal Col As Long, ByVal Row As Long, ByVal ButtonDown As Integer)
自分もListBoxでやろうとしてたんですが、先輩に「Spread使えた方が便利だから
、これを機会にSpreadでやりなさい」と、、、。
0800デフォルトの名無しさんNGNG
>799
やっぱRowが引けるじゃねーか。何でそれを利用しない?
んであんなコード書いてたら無限ループになるのは当たり前だ。

>自分もListBoxでやろうとしてたんですが、先輩に「Spread使えた方が便利だから
>、これを機会にSpreadでやりなさい」と、、、。

いや、だからListBox使えって言ってんじゃなくて、「こういう形態の物」の使い方を
(恐らく一番簡単であろう)ListBoxで勉強しろ、つってんだよ。
コード見りゃ「ああ、コイツ何も分かってねーな」てのが一撃で分かったからな。

つーか何でその先輩に質問せずにここで聞いてんだ?
0801デフォルトの名無しさんNGNG
>>800
>やっぱRowが引けるじゃねーか。何でそれを利用しない?
Rowを使いたいのですが、その方法が他の行のチェックを外してからRowに入って
る値の行のチャックをつけるっていうのしか浮かびませんでした。

>つーか何でその先輩に質問せずにここで聞いてんだ?
やれと言ったわりに、自分がやりたい事を説明質問したら「わからないから、がん
ばって調べてみて」と。
0802デフォルトの名無しさんNGNG
>>801
グローバルかスタティックで変更中の行番号を保持。
その後自分以外を全て変更。
連鎖して起こるイベントは自分以外だったら、何もしないとか。
0803デフォルトの名無しさんNGNG
>>697=795
まいったな。オブジェクトのインスタンス生成前にMsgBoxで処理が
止まってるところにタイマーイベントで、オブジェクト叩いてるってオチかよ。

恐らく誰かさんの作ったコードのメンテやってるんだろうけど、もちっと
コードが読めるようになった方がいいと思うぞ。
0804デフォルトの名無しさんNGNG
>>802
ありがとうございます。早速チャレンジしてみます。
0805デフォルトの名無しさんNGNG
>>804
書いた本人がいうのもなんだが、あの日本語でわかってくれた?
要はイベントを抑制するフラグを作って、連鎖するのを防ぐと。
0806デフォルトの名無しさんNGNG
>>805
実際とりかかってみようと思ったのですが、ちゃんとわかってなかったです。
その後いろいろ調べてみて
If ButtonDown = 1 Then 'チェックをつけた時が1
  SS.Col = Col
  For i = 1 To SS.MaxRows
    SS.Row = i
    If SS.Row <> Row Then
      SS.Value = "0"
    End If
  Next i
End If
で上手く動作しました。プロシージャの引数のButtonDownにチェックをつけた時
は1で、外した時には0が入るようだったので利用してみました。
0807デフォルトの名無しさんNGNG
リッチテキストの垂直スクロールバーが
有効になっている時の、最大値を取得する方法ってありますか?
0808デフォルトの名無しさんNGNG
EUCをSJISへ変換するVBのサンプルソースないですか?
0809デフォルトの名無しさんNGNG
>>790
マウスカーソルは透明にしておいて、イメージをマウス代わりにしてみてはどうでしょう?

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

If X > 500 Then X = 500
If Y > 500 Then Y = 500

Image1.Left = X
Image1.Top = Y

End Sub
0810デフォルトの名無しさんNGNG
>>808
NKFのDLLとかそれのソースとかPerlのJCodeとか色々。
0811デフォルトの名無しさんNGNG
VB起動→プロジェクトロードだと、相対パスの画像等が開けない
目当てのプロジェクトダブルクリックで起動すると、相対パスの画像等が開ける

おそらく、基準パスの関係なんでしょうが、どうすれば解決できますか?
0812デフォルトの名無しさんNGNG
>>811
デバッガの実行パスはVB.EXEの場所です。
デバック用にCHDIRで適当なディレクトリに移動する。
0813デフォルトの名無しさんNGNG
例えば、Form上に、3×5個のコントロールがあるとします。

矢印キーを用いて、上下左右にForcusを移動したい場合、
どうすればよいのでしょうか?
0814デフォルトの名無しさんNGNG
コントロールを配列にして、キーダウンで目的のコントロールにSetFocus。
手元にVB無いから思いっきり適当だけど、こんなんで出来ると思う。

private function pos(cur,x,y) as long
pos = cur+y*3+x;
if pos<0 then pos = 0
if pos>14 then pos = 14
end function

private sub button_mousedown(index,keycode,shift)
dim i as long
select case keycode
case up
i = pos(index,0,-1)
case down
i = pos(index,0,1)
case left
i = pos(index,-1,0)
case right
i = pos(index,1,0)
end select

button(i).setfocus
end sub
0815デフォルトの名無しさんNGNG
>>814
ボタン限定だと弱いと思う。
FormのコントロールってControlsコレクションで取れるんだっけ?

FormのKeyPreviewをTrueにして、Formのキーダウンイベントで出来ると思うけど。
今フォーカスがあるウィンドウをとるのはAPIがあったはず。

で、そのコントロールのhWndあたりで、Form上のどのコントロールか判定して、
そのコントロールの左上座標を取得。

その左上座標からカーソルを押された方向に一番近いコントロールをコレクションから
探して、そいつのSetFocus。(フォーカス取れるかの判定は必要かも)
0816デフォルトの名無しさんNGNG
IMEの制御をしたいのですが、
オフ固定とか、全角ひらがなとかにするには どうしたらいいのでしょうか?
0817デフォルトの名無しさんNGNG
With コントロール

で使用したとき、その中で そのコントロール自身を取得するには
どうしたらいいのでしょうか?
NAMEだと文字列になってしまいます。
Controls が 取得したいのです。
0818デフォルトの名無しさんNGNG
MediaPlayerをフォームに組み込んで、動画(mpg)を再生しているのですが、
終了時に先頭に戻ってしまいます。
終了時に最後でストップさせる設定とか方法はないでしょうか?

または、現在再生位置は取得できるので、動画の長さが取得できれば止める事ができるのですが、
動画長について取得する方法はないでしょうか?
0819818NGNG
もしかして、スレ違いですか?
0820817NGNG
例

With Text1(1)
Call trns(なんとか)
End With

Sub trns(t as textbox)
end sub

なんとかの部分に Text1(1)を 意味するものが入れたいのです。

どうしたらいいのでしょうか?
0821デフォルトの名無しさんNGNG
>>817
逆に質問していいか?

With〜End Withを使わなければならない理由は?

Call trns(Text1(1))では駄目なのか?
0822817NGNG
>>820

With〜End Withが、複数あるため、すべて同じような
コーディングにしたいのです。
0823デフォルトの名無しさんNGNG
>>817
・・・おまい、Withステートメントの意味わかってんのか?
0824817NGNG
>>823
わかってます。

つまり、NAMEだと オブジェクト名しか取得できないので、
コントロール自身を取得できるものがないのか?という質問です。
0825デフォルトの名無しさんNGNG
安かったので、学生向きVISUAL Studio買ったけど、何したらいいか見当つきません。
何すればいいですかね?

というか、最初に何をプログラムしましたか?
0826デフォルトの名無しさんNGNG
>>825
ベーマガ
0827デフォルトの名無しさんNGNG
最初に作ったのなんだったかなぁ。
素数計算だったか魔方陣生成だったか。

0828デフォルトの名無しさんNGNG
将棋(思考ルーチン除く)がいいよ
0829デフォルトの名無しさんNGNG
本棚に並べて満足感に浸ってろ

何したらいいか?じゃなくて、何かしたくなったらすればいい
0830823NGNG
>>817
わかってるんだったら、
何故その部分でWithステートメントを使うの?
>>821氏も言ってるけど、call trns(Text1(1))でいいと思われ。

>コントロール自身を取得できるものがないのか?
TextBoxのプロパティに As TextBoxな値があったらまずいでしょ。

0831817NGNG
>>830

なぜ、Withステートメントを使うのか、その利用方法を
知ってるのなら わかると思いますが?
0832817NGNG
>>830

私が Withステートメントを使う理由をわかっていないと
思われるならば、正しい理由を教えてください。
0833デフォルトの名無しさんNGNG
>>832
横レスだけど。

Withステートメント内で質問のようなことをしようとするから。
Class内のThisと区別できていないじゃない。

Withで指定されたオブジェクト自身が自分のインスタンスをプロパティで持っているなら別だけど。
0834デフォルトの名無しさんNGNG
Option1.Value = True と
Option1 = True は 同じことでしょうか?
0835デフォルトの名無しさんNGNG
>>826
そりゃプログラミングじゃなくて単なるタイピングだろ?

投稿してたってんなら別だけど。
0836デフォルトの名無しさんNGNG
同じですが、省略せずに記述しておいたほうが無難であると思われまする。
0837デフォルトの名無しさんNGNG
>>832

Withステートメントが何かを分かってないんじゃ?
フロー制御ステートメントって何か分かってる?
0838デフォルトの名無しさんNGNG
>>834
デフォルトプロパティです。
TextBoxならTextなど、コントロールによって決まります。

だけど、ソースを見たときに判りにくいのとかあるので>>836さんに同意。
0839デフォルトの名無しさんNGNG
>>833
オブジェクトが自分のインスタンスをプロパティで持つ事ってあるのかな?
0840デフォルトの名無しさんNGNG
>>837
わかっているならば教えてやれ。
0841833NGNG
>>839
インスタンスへの参照はもてるけどね。
実体ではないですよ、はい。
実体じゃ、鶏が先かたまごか先かに。w
0842813NGNG
>>814->>815さん
有難うございました。

>>815さん
なるほど非常に参考になりました。

実は、各コントロールの裏に、飛び先の構造体を持たせておこうかと思ってました。
というのは、実際には、
text1の値が、1ならばtext2にFocus移動、2ならばtext3にFoccusが移動するという機能を
持たせたいからなのですが、
飛び先を、あらかじめ持たせるのはプログラム上、煩雑になる気がして悩んでいます。
0843デフォルトの名無しさんNGNG
Check1.Value = True

としたらエラーとなります。
どうしててでしょうか?
0844デフォルトの名無しさんNGNG
>>817
Call trns(Me.Controls.Item(.Name).Item(.Index))
Call trns((Me.Controls(.Name)(.Index)))
trns (Me.Controls(.Name)(.Index))
好きな書き方でやったらいい。
0845デフォルトの名無しさんNGNG
>>843
エラーコードを見て、Check1.Valueプロパティの型を調べれば
原因が分かると思う。
0846デフォルトの名無しさんNGNG
>>843
チェックボックスのValueはBooleanか?数値だったような・・・。
チェックあり、なし、無効の3択。
0847デフォルトの名無しさんNGNG
>>817
Controls が 取得したいのです。
↓
Contol を取得したいのです。
の間違いだと言う前提で・・・。

Dim Contol as Control

set objControl = コントロール
with コントロール
end with

で、objControl を参照しれ。




0848デフォルトの名無しさんNGNG
>>842
だから座標計算ですよ。w
昔、同じようなプログラムは作ったことがある。

Textboxが画面内に適当にあって、それ間をカーソルで移動。
敵はどのコントロールがフォーカスを持っているかより、
コントロール毎のデフォルトの処理かな?
カーソルキー上下左右とかで何か処理がある場合。(テキストだと当然文字間のカーソル移動だし)
0849847NGNG
>>847
×Dim Contol as Control
○Dim objContol as Control
だ。スマソ
0850817NGNG
>>844

Call trns(Me.Controls.Item(.Name).Item(.Index))
この方法でいけました。ありがとうこざいます。

ちなみに 2行目の
Call trns((Me.Controls(.Name)(.Index)))
エラーになっちゃったのですが・・・。
ま、手段がみつかったので、いいです。
0851デフォルトの名無しさんNGNG
IMEのプロパティがないところで、IMEを制御する方法を誰か教えてください。
0852デフォルトの名無しさんNGNG
>>851
APIで出来ないの?
0853デフォルトの名無しさんNGNG
>>851
http://homepage2.nifty.com/Dee/vb/tips/vb/imemodebyapi.html
0854デフォルトの名無しさんNGNG
>>853
全角ひらがなに したいのですが、どうすればいいのでしょうか?
0855デフォルトの名無しさんNGNG
>>854
ttp://fukkey.dyndns.org/pins/vb/000725/17293.html
0856デフォルトの名無しさんNGNG
いつからここはGoogle検索の代行サービスになったんだ
0857デフォルトの名無しさんNGNG
はてな?(w
0858デフォルトの名無しさんNGNG
フェッチするとはどうすること?
0859デフォルトの名無しさんNGNG
http://e-words.jp/w/E38395E382A7E38383E38381.html
0860デフォルトの名無しさんNGNG
http://dictionary.goo.ne.jp/search.php?MT=fetch&kind=jn&mode=1&ej.x=27&ej.y=16
0861デフォルトの名無しさんNGNG
VBでフェッチするにはどうするのだろうか・・・
0862デフォルトの名無しさんNGNG
>>861
http://www.google.co.jp/search?q=VB%E3%83%95%E3%82%A7%E3%83%81
0863デフォルトの名無しさんNGNG
あるプロジェクトの保守管理を行いつつ、システムの追加・変更案件の作業をするとき、
皆様は、ソース管理はどのようにしていますか?

現在、保守管理は別の者が行っています。
私は、次のフェーズで追加される新しい機能の仕様の検証や、
要素技術のテストをします。
開発環境は VB5.0 で、プロジェクトは Visual Source Safe 8.0 で管理されています。

VSS から切り離して作業するというのも考えたのですが、やはりソース管理されて
いる便利さと安心感は捨てがたいです。

ライセンスの関係で VSSサーバは現在一台ですが、購入に見合うメリットがあれば
もう一台用意することも検討できます。

試行錯誤するのが一番なのでしょうが、間違えて安定版の方に不都合を出すと、
(私の命が)危ないので、アドバイスや、参考になるページ、書籍等ありましたら
御教示下さい。よろしくお願いいたします。
0864デフォルトの名無しさんNGNG
>>863
命が危なくない仕事を探せばいい。死ぬよりいいだろ。
0865デフォルトの名無しさんNGNG
Windows Xp Professional で Visual Basic 6 SP6 を使っています。
イメージボックスに画像を貼り付けた後、その画像をクリックすると
Internet Explorerを起動して指定したURL先にリンクするようにしたいのですが、
どうすれば良いのでしょうか?必ずInternet Explorerを起動ではなくても
シェルに任せる形で良いです。よろしくお願い致します。
0866デフォルトの名無しさんNGNG
>>865
ShellExecuteEx
0867865NGNG
>>866
ありがとうございます。やってみます。
0868デフォルトの名無しさんNGNG
>>858
ADOとかoo4oだったら、勝手にフェッチしてくれてるじゃん。
SQLを実行して結果をVB側の変数に割り当てる部分。
0869デフォルトの名無しさんNGNG
足フェチですが何か?
0870デフォルトの名無しさんNGNG
>>863
VSSってブランチできないんだっけ?
CSVばかりつかってるからよくわからん。
0871デフォルトの名無しさんNGNG
CSVじゃ管理できんわな。CVSのまちがいでした。
0872デフォルトの名無しさんNGNG
ウィンドウ上に5*5のボタンが並んでるとして、それをtabで飛ばしたい時は、
TabIndexに番号を付けてやればいいっていうのはわかるんだけど、
十字キーの→を押したらタブ移動とは関係ないく、フォーカスが右に移動して、
←を押したらフォーカスが左に移動するという処理をやりたいんだけど、
何か良い方法ない?一つ一つキープレスに命令書き込めばできないことは
ないとは思うんだけど、かなり力技だと思うんで・・・
0873デフォルトの名無しさんNGNG
>>872
そういうときに、コントロール配列ですよ。
0874デフォルトの名無しさんNGNG
>>872
別の質問者なのかな。 >>813-814
0875デフォルトの名無しさんNGNG
同じだろ
0876813NGNG
>>875
違います(w
0877デフォルトの名無しさんNGNG
yahooからhtml取得したらEUCなんですけど
これをsjisに変換したいのですがDLLなど使わずに
やりたいのですが、eucからsjisって計算だけじゃ変換できないんでしょうか?
0878デフォルトの名無しさんNGNG
>>877
おまえなあ、、、DLLも計算して変換してるというくらいはわかるよな?
0879デフォルトの名無しさんNGNG
>>877
オールVBのサンプルソースぐらいすぐ見つかるのに。
0880デフォルトの名無しさんNGNG
>>879
どこですか?
まったく見つからないのですが・・・
0881デフォルトの名無しさんNGNG
>>880
全く今日はぐうぐる様への信心が足りない奴とか、少し前も読まない奴とかばっかり。
0882デフォルトの名無しさんNGNG
>>863
VSSの最新版って8.0だっけ?

VSS6.0だとファイルの分岐、共有、マージって方法もあるけど
個人的にはあまりお薦めできない。(詳細はヘルプを参照)

VSS鯖が1台でも、VSSのデータベースを複数作れば
ライセンス的には問題無いんじゃない。
ま、VSSデータベースを複数作らなくても
プロジェクトを分けて管理すれば済むと思われ。
0883デフォルトの名無しさんNGNG
>>881
無駄レスはいりません。
0884デフォルトの名無しさんNGNG
>>883
無駄レスはいりません。
0885デフォルトの名無しさんNGNG
大体さー、文字コード変換の基本もわからない奴が
ネット上からHTMLとか拾うプログラムを作るべきではないと思うんだが。
0886デフォルトの名無しさんNGNG
>863
とても簡単だ。
藻前が素晴らしいソース管理プログラムを作ればいい。

という冗談は置いといて、一番心配なのは何なんだ?やっぱソース消失だろう?
だったら原点に帰ってバックアップ環境の強化じゃないか?
テープドライブなぞ用意してデイリーバックアップするのが一番じゃないか?
0887デフォルトの名無しさんNGNG
ていうか、少なくとも4人以上の人間がかかわっているような大きめのプロジェクでもなきゃ、
そもそもソース管理ツールなんて本当に必要なのかと。。
0888デフォルトの名無しさんNGNG
>>885
はぁ?基本はわかってるっつーの
SJISからJISやiso2022jpならCでやったし。
0889デフォルトの名無しさんNGNG
>>887
あなたの所は生ぬるい職場なんですね 本当にうらやましい
0890デフォルトの名無しさんNGNG
>>887
一人で使っていても便利だぞ?
0891デフォルトの名無しさんNGNG
>>888
わかってねえじゃん。
0892デフォルトの名無しさんNGNG
>>891
どこがやねん
0893デフォルトの名無しさんNGNG
文字コードの人は

http://www.unixuser.org/~euske/doc/kanjicode/
http://www.mars.dti.ne.jp/~torao/program/appendix/japanese.html

を読みなさい。
0894デフォルトの名無しさんNGNG
もういいや
0895はちみつ六郎NGNG
秀丸とかのエディタで改行や半角スペース全角スペースなどを表示してますが
ああいう記号を表示するのってVBのテキストボックスでやろうと思ったら
どんな方法があるでしょうか…?
0896デフォルトの名無しさんNGNG
>>895
テキストボックスでやろうと思うな。
オーナードローでもやるつもりか?
0897デフォルトの名無しさんNGNG
>895
テキトーな文字に置き換えるしかなかろう。
どういう文字にするかは自分で考えれ。
0898はちみつ六郎NGNG
>>896-897
ありがとうございます、やってみます。
0899デフォルトの名無しさんNGNG
>>872
じつは KeyPress ではできない。矢印キーは特殊な扱いで、
フックしないととれないから。

ということで、フックして後は力技。
0900デフォルトの名無しさんNGNG
>>888
それが本当なら、自力で書けないはずがない。
0901デフォルトの名無しさんNGNG
string型に複数行のデータがあるのですが
1行目読み終わったら次の行に移動するにはどうすればいいですか?

できなければ行で管理できるデータ型ってありますか?
0902デフォルトの名無しさんNGNG
>>900
だから書けるっていってるじゃん。
アルゴリズムを教えれ
0903デフォルトの名無しさんNGNG
>>901
splitとかvbcrlfを探すとか配列使うとか
0904デフォルトの名無しさんNGNG
>>902
自分で考えろ。
それができないなら、分かってるとも書けるとも言えない。
0905デフォルトの名無しさんNGNG
ていうか、
>yahooからhtml取得したらEUCなんですけど
>これをsjisに変換したいのですがDLLなど使わずに
>やりたいのですが、eucからsjisって計算だけじゃ変換できないんでしょうか?

877さんは、計算「だけ」で変換できるかどうかを聞いてるんじゃないの?
Tableをもたせないとダメな変換もある訳だし・・・
0906901NGNG
>903
できた〜〜〜!!!!
ありがとう(・∀・)
0907デフォルトの名無しさんNGNG
>>905
そうなの。君読解力あるな。
ここはVB房の巣窟で困るよ
0908デフォルトの名無しさんNGNG
ところでバイト配列を高速にコピーする命令ってありますか?
memcpyみたいやなつ。
0909デフォルトの名無しさんNGNG
jcode.dllつかっちゃったよ。まぁいっか。
0910デフォルトの名無しさんNGNG
>>908
CopyMemoryってAPIは?
0911デフォルトの名無しさんNGNG
>>910
APIでやるのが普通なんですか?
VBにはそういう命令ないのかな。
0912デフォルトの名無しさんNGNG
VB6で作られたソフトのコードを解析しています。
.ctlの中に記述してある関数を、Callで呼んでいる箇所があるのですが、
一行ずつデバッグしていくと、その箇所で関数に入らず次の行に行ってしまいます。
その中の値をウォッチしたいのですが、デバッグはできないのでしょうか。
0913デフォルトの名無しさんNGNG
>>877
EUCってのは単純じゃないんだよね。
完全な変換を考えるとかな〜り面倒。
でも日本語の一般的なところだけなら
JIS->SJISと大してかわらん計算でいけるよ。
EUCコードから8080Hを引いたのがJISになるの。
(昔はこの手抜き変換がまかり通っていたんだけどね)
0914デフォルトの名無しさんNGNG
メッセージボックスやファイル操作でダブルコーテーションを入れる必要があるとき
にはどうしたらよいのでしょうか?
0915デフォルトの名無しさんNGNG
Chr$(&H22)
0916デフォルトの名無しさんNGNG
>>905
可能かどうかといえば可能だけど、
>>>888の通りならそんなこと聞くまでも無いので煽られてるだけ。
ついでにいえば>>893を読んで理解できないならそもそも問題外。

素直に分からんといえば、親切な奴が教えてくれたかもしれんのにね。
0917デフォルトの名無しさんNGNG
>>915
おお、ありがとうございます。
0918デフォルトの名無しさんNGNG
>>907
計算だけで変換できないなんて、知ってればすぐにわかることじゃん。
結論としては、あんたは文字コード変換を理解できていない。
0919デフォルトの名無しさんNGNG
>>918
話にならない
0920デフォルトの名無しさんNGNG
フォームにボタンを追加した上で、

Option Explicit

Private Declare Function PathCompactPath Lib "shlwapi.dll" _
Alias "PathCompactPathA" _
(ByVal hdc As Long, _
ByVal lpszPath As String, _
ByVal dx As Long) As Long

Private Sub Command1_Click()
Dim buff As String * 1024
buff = "c:\" & vbNullChar
PathCompactPath hWnd, buff, Width / Screen.TwipsPerPixelX - 30
End Sub

というコードを記述しました。
ここで、ボタンを 3、 4 回つづけてクリックすると、不正アクセスエラーが
発生します。
なぜでしょう?また回避法はあるでしょうか。
0921デフォルトの名無しさんNGNG
>>919
そんなに自分を責めるなよ。(´・ω・`)
0922デフォルトの名無しさんNGNG
>>920
うまくいかない原因は想像がつくけど、そのプログラミング雑誌のライターが
読者に宿題だすみたいな書き方が気に入らない。

なんなんだよ、
>なぜでしょう?また回避法はあるでしょうか。
ってのは。それが人に物を頼む態度なの?
0923デフォルトの名無しさんNGNG
jcode.dll使ってるんだけどメモリ関係のエラーが出てしまう。
なぜだろう
0924デフォルトの名無しさんNGNG
>>923
使い方が悪い
0925デフォルトの名無しさんNGNG
悪くない
0926デフォルトの名無しさんNGNG
あのさ、一連の文字コードの奴。
あんた人に聞く気ないならここ来るなよ。
0927デフォルトの名無しさんNGNG
かまったら粘着するから、以後スルーね。
0928デフォルトの名無しさんNGNG
>>920
しね
0929デフォルトの名無しさんNGNG
>>920

> ByVal hdc As Long
「hDC」っていうのは「デバイスコンテキスト」の「ハンドル」っていう意味。
対して
> PathCompactPath hWnd, buff, Width / Screen.TwipsPerPixelX - 30
「hWnd」っていうのは「ウィンドウ」の「ハンドル」っていう意味。
後はGoogleなんかで検索して理解してね。
0930デフォルトの名無しさんNGNG
デバイスコンテキスト周りは、後始末とかきちんとね。
0931デフォルトの名無しさんNGNG
デバイスコンテキストの後始末なんていらないし、>>920の問題は>>929に
書いてあることだけではない。
0932863NGNG
近くの本屋には、いい参考書がありませんでした。
(まぁ、あったら逆に驚いたところですが)

>>882

CVS も個人的に興味があるので調べてみたいと思います。

分岐については、少し試してみてから使用するか考えます。
とりあえずは、リポジトリをもう一つ作って、そちらで作業することにします。
併合した場合に、履歴が活かせないのが少し残念ですが。
(こういうときのための分岐なわけですね・・・)

>>886
CVS に機能追加できるような腕前になれたらいいなぁ・・・。

>>一番心配なのは何なんだ?やっぱソース消失だろう?
消失も怖いですが、
「責任の所在がはっきりしない変更」が入り込んだときが、根が深いですよね。
現在は、デイリーはファイルで別パーテーションに、
ウィークリーでCD-RW に取ってます。

でも、考えてみたら自分ではまだリカバリの演習(?)してませんでした。
連休明けにその辺見直してみます。

>>890
同感です。
0933デフォルトの名無しさんNGNG
>>932
いまから使うなら subversion のほうが良いと思うんだが。
0934デフォルトの名無しさんNGNG
証明書に関するAPIってないのでしょうか?
0935デフォルトの名無しさんNGNG
>>934
こちらへどうぞ。
http://pc5.2ch.net/test/read.cgi/tech/1088140233/
0936デフォルトの名無しさんNGNG
素人的に考えると おかしくなる前の状態に戻せないのかねぇ と思ってしまう。

元々やばい状態だったってこと?
0937936NGNG
すんまそん
誤爆です。
0938デフォルトの名無しさんNGNG
VB.NETになっておかしくなったから、その前のVB6.0に戻したいということか。
0939デフォルトの名無しさんNGNG
>>931
DCの後始末がいらない理由と、>>920の残された問題が何かを
教えてください。
0940デフォルトの名無しさんNGNG
WinxpPro+VB+SP6環境でVB終了時に必ず次のエラーが発生します。
「問題が発生したため、Visual Basic を終了します。 ご不便をおかけして申し訳ありません。
MicroSoftにエラー送信しますか?っていうアレです。
一時間程度連続して使っていると同じように落ちることもあります。

調べてみても特にXPでの異常動作などないようですし、エラー情報をMSに送信してはいますが、
もちろん返答など期待できるはずもないですので、どなたか教えてください・・
0941886NGNG
>863
バックアップもちゃんとやってるみたいだから、まずはそっち方面は安心だな。

>「責任の所在がはっきりしない変更」が入り込んだときが、根が深いですよね。
ううむ、そっち方面か。
ただそりゃ職場環境というか、人的な面もあるんじゃないか?
あとはSE不在でPGがそれぞれ勝手に仕様を決めてるとか。

>940
それだけじゃ情報が少なすぎてサッパリ分からん。
修正パッチは当てたのか?
0942886NGNG
>940
ああスマソ。当ててるんだな。見落としてた。
取り敢えずエラーの詳細と、VB終了時に何をやってたかと、
同時稼働してるソフツの中にVB製のがあったらそれの名前を書いてみるのが吉。
0943デフォルトの名無しさんNGNG
>>942
レスどもです!
同時稼動してるソフトといえば秀丸とノートンくらいです。今どっちも終了させてやってみましたが、
ダメでした・・。
VB終了時に何をやっていたかといえば、何もやってません。
「プログラム」→「VisualStudio6.0」→「VB6.0」→「標準EXE」選択→(何もせず)保存せず終了
これで落ちます。

エラー詳細は表示されませんが、エラー署名として以下の表示はあります。
AppName: vb6.exe AppVer: 6.0.97.82 ModName: vb6.exe
ModVer: 6.0.97.82 Offset: 0003f08f
・・あまり意味のない情報ですね・・。
0944デフォルトの名無しさんNGNG
こんにちわ 質問させてください
OptionButtonのStyleでVbButtonGraphicalを
使ってみたら四角い線が出ます
なにか表示させない方法ってあります?
0945デフォルトの名無しさんNGNG
VBでシリアルで、データを送信した後、
データ待ちをして再びデータを送信するPGはどういう風に組めばいいでしょう?

Private Sub Command1_Click()
Dim SCIStr As String

MSComm1.Output = &H6 'ACK送信
Do While (SCIStr = &H6) 'ACK待ち
MSComm1.Input = SCIStr '受信データをSCIStrに入れる
Loop

MSComm1.Output = SendStr  ’Data送信


End Sub

では、うまくいかなく・・・
0946デフォルトの名無しさんNGNG
>>945
そんなもん、相手との手順がわからんとこたえられっこないじゃん。

データ受信は無限ループで待たないで、OnCommのイベントで処理する。
あと、上記ソースじゃ相手はたまったもんじゃない。
すっごいスピードでデータが連続して送られる可能性大。

データ送った後何秒以内に応答がなかったら再送とか、マニュアルに書いて無いか?
0947デフォルトの名無しさんNGNG
>946
すみません。上記では通信のポイントだけ書いてます。
手順は、ACK送信→ACK待ち→DATA送信で、
再送、キャンセルの部分は、とりあえず必要ないと思いソースでは省いていました。

OnCommで処理するという事は
ループ中はDoEventsを入れておくという事でしょうか?
0948デフォルトの名無しさんNGNG
>>947
ループしない。
データ受信のイベントが来たら、受信したデータをバッファに格納して、それを見て分岐する感じ。

画面を送信中!とかってDisableにする場合でも、そっちのほうがいい。
Disableと無限ループでの無応答は違うからね。無応答はみっともないから避けるべき。

一本道で全て処理をするっていう思考から転換しないと。
0949886NGNG
>943
ん〜、なんだろね(w
参照設定とコンポーネントから外せる物を全て外してもエラーが出る?

あと作ったプログラムとかは平気なんかな?
だったら気にしない(w という手もあるが、
VBを再インストールしてどうなるか?だな。
0950デフォルトの名無しさんNGNG
すごく初心的な質問ですみません。
TextBoxの入力可、入力不可の制御はプロパティの中のどれを
使用すればよろしいですか。

0951デフォルトの名無しさんNGNG
EnabledかLockedあたりが普通なんじゃないだろうか。
0952デフォルトの名無しさんNGNG
>>947
MSのサポート技術情報検索で
OnCommで検索してごらん、例があるよ

ただしONCOMMイベントで受信バイト数が多い場合、
受信バイト数を指定しているのになぜか
クロックの早いマシンでは、input時にデータが入りきって
おらずデータ落ちが発生するので要注意
0953デフォルトの名無しさんNGNG
エェェェー、OnCommって、
あれはシングルタスク/ハードウェア割り込みっていうパラダイムから抜けられない
アナクロな人向けのもので、普通はあんまり使わないと思うけどなあ。
0954デフォルトの名無しさんNGNG
>>953
は?
イベント取り分で作成するのに、ループでDoEventsやるより健全だけど。
0955デフォルトの名無しさんNGNG
>>954
それは「メインループ」っていうこれまたアナクロな手法を使うかどうか、
って話で、OnCommを使うかどうかって話とはほとんど関係がない。
0956デフォルトの名無しさんNGNG
>>953
イベントドリブンな処理系では通信処理もイベントで処理するってのはなんら
不思議な話ではないと思うが。

君の論理を適用するならば、通信処理をループ回して処理するのは、メッセージ
ループなパラダイムから抜けられないアナクロな人向けって事にならないか?

さてと本題に戻るが、OnCommで送受信イベントハンドルするのと、ループでポー
リングするのとどっちがいいかって言われれば、まぁやりやすい方でやればいい
かなと思う。VBのヘルプにも、双方のやり方が書いてあるし。

どっちがアナクロなんて事はないし、そんな事を言う必要もない。
0957デフォルトの名無しさんNGNG
うちも仕事でシリアル通信ものやってるんだけど、
MSCommは特定のノートにUSB-シリアル変換器つなげる状態だとOnCommイベント発生しない事がある。
だからうちはVC++でオートメーションDLL作ってやってるね。
0958デフォルトの名無しさんNGNG
>>956
何を言っているのか、何が言いたいのかいまいち理解できないんですが、

>イベントドリブンな処理系では通信処理もイベントで処理するってのはなんら
>不思議な話ではないと思うが。
いや、不思議というか、不合理な話でしょ。
なぜなら、イベントドリブンってのは、もともとシリアルの通信みたいに
ミリセカンド(場合によってはそれ以下)のオーダーのインターバルで
イベントが発生するような用途を想定したものじゃないから。

>OnCommで送受信イベントハンドルするのと、ループでポー
>リングするのとどっちがいいかって言われれば、まぁやりやすい方でやればいい
>かなと思う。VBのヘルプにも、双方のやり方が書いてあるし。
私はどっちも下策だと言いたいんですけどね。
VB(というか、MSCOMM)使う時点でタイムクリティカルな処理は諦めてるんだから
OnCommだのループでポーリングだのはする意味がない。
0959デフォルトの名無しさんNGNG
つうか、>>958さんの意見って半端だな。

あなたのいうようにMSCOMMは精度の高い処理できないけど、
それはMsCommとかVBのせいではなく、OSレベルでだめじゃん。

あなたがいうようなことを実現したい場合、ハードを特製でつくって、ドライバで対応ですよね。
0960デフォルトの名無しさんNGNG
重箱の隅のつつきあい、揚げ足の取り合いはどうでもいい・・・
0961デフォルトの名無しさんNGNG
VB6.0 + oracle9i でシステム作成しています。

実行時エラー 3251
オブジェクトまたはプロバイダは要求された操作を実行できません

てエラーメッセージが出て、うまくできません
VBのフォームからデータ入力し、ボタン押下すると
オラクルにデータを入れたいんですけど。
0962デフォルトの名無しさんNGNG
>>961
それだけで判ったら、誰も苦労しないよ。
人にモノを尋ねるには、きちんと自分の困った状態を伝えないと。

ミドルウェアは何を使っていて、実行時エラーがどのステップで起きるかぐらいは書く。
0963961NGNG
>962さんありがとう。
Private Sub cmdadd_Click(Index As Integer)
Dim cn As New ADODB.Connection
Dim rst As ADODB.Recordset
Set cn = New ADODB.Connection
cn.ConnectionString = "Provider=MSDAORA.1;Password=***;User ID=****;Data Source=***;Persist Security Info=True"
cn.Open

Set rst = New ADODB.Recordset
rst.Source = "*****.******"
rst.ActiveConnection = cn
rst.CursorType = adOpenStatic
'レコードごとの共有的ロックを指定
rst.LockType = adLockOptimistic
rst.Open

With rst ←ここでデバックします。
.AddNew
![hosino] = Me.hosino  'フォームのデータをoracleに
![akahosi] = Me.akahosi
![hansin] = Me.hansin
.Update
  End With
rst.Close
cn.Close
Set rst = Nothing
Set cn = Nothing
End Sub
0964961 改め ニョロNGNG
みなさん よろしくお願いいたします。
0965デフォルトの名無しさんNGNG
>>964
これくらいだったら、1行ごとにmsgbox入れまくって解決するだろ。
0966920NGNG
そんなに僕の書き方が悪かったとは思いもしませんでした。
読者に宿題とか、そんな意図はまったく無く、困っているので質問しただけで、
他意はありませんでした。
一応、ROM はしていたのですが、勉強が足りなかったようです。
気分を害された方には申し訳ありませんでした。
出直してきます。
0967デフォルトの名無しさんNGNG
>>920
ボタンを続けて押せなくすればいいんじゃないの?
0968ニョロNGNG
>>965さんありがとう
>これくらいだったら、1行ごとにmsgbox入れまくって解決するだろ。
msgboxを入れていって、変数の値を見ていくってことですか?
してみたんですけど、うまくいきません

実行時エラー 3251
オブジェクトまたはプロバイダは要求された操作を実行できません

このメッセージばっかり出ます。
ほかのサイトで、テーブルに主キーが無い場合、このメッセージが
でることがあるって書いてあったんですけど、主キーも設定しているし。
0969ニョロNGNG
>>965さんありがとう
>これくらいだったら、1行ごとにmsgbox入れまくって解決するだろ。
msgboxを入れていって、変数の値を見ていくってことですか?
してみたんですけど、うまくいきません

実行時エラー 3251
オブジェクトまたはプロバイダは要求された操作を実行できません

このメッセージばっかり出ます。
ほかのサイトで、テーブルに主キーが無い場合、このメッセージが
でることがあるって書いてあったんですけど、主キーも設定しているし。
0970920NGNG
出直すと書きましたが、>>967さんありがとうございます。もっと考えた上で、
できれば後日あらためて書き込みたいと思います。
また遅くなりましたが 922, 928, 929, 930, 931, 939 の方々にもお礼申し上
げます。
0971デフォルトの名無しさんNGNG
>>963
ADO使わないからてきとーだけど、
スタティックで指定したレコードセットって更新可能なの?
なんとなくこういう場合ってダイナミックとかでとってくるような。
0972桜NGNG
form1の DataGrid で幾つか表示されている社員コード(Text型)の中から
ある該当する社員コードをダブルクリックすると、違うform2のtextボックスに
反映させるのはどうしたらいいのですか?
ご教授願います。
0973デフォルトの名無しさんNGNG
>>963
これは?
http://support.microsoft.com/default.aspx?scid=kb;JA;255707
0974デフォルトの名無しさんNGNG
>>970
まぁ、人それぞれとしてもさ
922,928に礼はいらんだろ
ちゃんと答えてくれている人と同列に扱うのはどうかと思うよ
0975デフォルトの名無しさんNGNG
全てのVBプログラマは蜂起せよ!!

構造体のないVBは【糞】
http://news17.2ch.net/test/read.cgi/news7/1088807486/
0976ニョロNGNG
>>973さん ありがとう
ありがとうございます。 973さん。

Microsoft Oracle OLE DB プロバイダ を使って、
Oracle データベースに対して更新を実行するために、
クライアント側のカーソルを使用する必要があります。
レコード セットを開く前に、これを行うために、同じ adUseClient
または数値 3 に CursorLocation プロパティを指定します。

上記をすればうまくいきました。 感謝致します。

oracle+VBをするPGにとっては当たり前のことなんですかね?
みなさん上記のようにしていらっしゃるのでしょうか?
私にはoracle+VBは敷居が高いのかな?
0977デフォルトの名無しさんNGNG
>976
 Oracle + VBの場合、MS製以外のミドルウェアを
使うのがセオリーだな。
 Oracle Object for OLE(通称oo4o)とか、要はOracleの
為に作られた物を使った方が労力が少ないのですよ。
0978ニョロNGNG
>>976さんありがとう

With rst
.AddNew
![hosino] = Me.hosino  'フォームのデータをoracleに
![akahosi] = Me.akahosi
![hansin] = Me.hansin
.Update

![hosino] = Me.hosino  
こうすると、パラメータの数が無効です ってエラーが来ます。

オラクルの hosino 項目に フォームの hosino(テキストボックス)
の値をいれたいんですが・・・・・
もう訳が分からない。(泣)
0979デフォルトの名無しさんNGNG
>>977
そうですよね。
MSとOracleの仲の悪さがそのまま製品の質に出てますよね。w

ADOからoo4oはオブジェクト構造もそんなに変わらないから、
今から差し替えても良いんじゃないの?

メソッドとかオブジェクト名は1:1で対応してると思うから、結構単純な置換でいけますよ。
0980デフォルトの名無しさんNGNG
またADOを知らずに書くけど。
Withブロック内で ![xx]って表記って有効なの?
ついでにそろそろ次スレが・・・。
0981デフォルトの名無しさんNGNG
>>980
それは有効ですよ。
0982もう一度、桜NGNG
form1の DataGrid で幾つか表示されている社員コード(Text型)の中から
ある該当する社員コードをダブルクリックすると、違うform2のtextボックスに
反映させるのはどうしたらいいのですか?
ご教授願います。
0983デフォルトの名無しさんNGNG
>>982
DataGridのダブルクリックのイベントで、社員コードを記憶、
Form2のtextボックスに表示でいいと思うが。
0984もう一度、桜NGNG
>>サンクス
DataGridで幾つかの、コードが表示されている場合、
DataGridの上から3行目の箇所をダブルクリックするとします。
その3行目の箇所を記憶できるんしょうか?


0985デフォルトの名無しさんNGNG
>>984

http://www.google.co.jp/search?hl=ja&ie=UTF-8&q=DataGrid+VB6&lr=lang_ja
0986デフォルトの名無しさんNGNG
>978
なんだなんだ、よく分からんぞ。
>976でうまくいったかに見えたが、今度は>978のエラーが出るって事か?
それとも実はニョロは2人いて、似た様なコード組んでるって事か?(w
0987デフォルトの名無しさんNGNG
誰か次スレたてて〜
0988863NGNG
>>933
subversionというのは初耳でした。
http://subversion.bluegate.org/doc/book.html#svn-ch-1-sect-1
を見てみてみましたが、ファイルのコピーや名前の変更に対応してくれるのは
魅力的ですね。VSSにもそういう機能欲しいです。

>>886
>ただそりゃ職場環境というか、人的な面もあるんじゃないか?

あります。選手層薄いもんで。
当座の修正がそのまま恒常的な修正になったりとか・・・。
でも、人的資源が必要十分な職場なんてレアだと思うので、
ツールの力も借りてなんとか遣り繰りしていく作戦です。
0989デフォルトの名無しさんNGNG
>>987
立てますた。
VBプログラマ質問スレ(6.0以前) Part36
http://pc5.2ch.net/test/read.cgi/tech/1090286450/

1の他スレリンクは調べたけど、過去ログのhtml化は未調査。
このスレで抜けてたPart34は入れた。
0990886NGNG
>863
了解だが、
>でも、人的資源が必要十分な職場なんてレアだと思うので、
こんな事言ってるといつまで経ってもマトモにゃなんないぞ。
「システム入れりゃ仕事内容がよくなる」ってのはまさにシロウトさんの発想であって、
本質は全く別の部分にあり、故に職場改善が必要であるというのは
漏れ達には既に分かっている事ではないか?
「段取り七割」という言葉の意味を今一度思い出すべし。

…とは言っても藻前さんにも立場があろうし、会社が言う事を聞かない場合も多々あろうしなぁ。
まぁ同僚や会社を動かせる人間になれるようにガンガレ。
0991デフォルトの名無しさんNGNG
>>990
この格言を思い出したーよ。(´・ω・`)
引用元:ttp://www2.biglobe.ne.jp/~oni_page/other/etc/pr03.html


問題に対してすぐさま解決法を決めつけるプログラマが多すぎる。

彼らは 1分考えて、1日をコーディングに費やす。

1時間考えて 1時間でコーディングする代わりに。

Jon Bentley
0992デフォルトの名無しさんNGNG
うめーーーっしゅっ!
0993デフォルトの名無しさんNGNG
>分からないときはIntegerよりCurrency。CurrencyよりVariant。安全第一。(VBプログラマーより)

でいいですか?
0994デフォルトの名無しさんNGNG
>>993
そこはちょっと疑問だな。
中に入る値が明確にできないようなコーディングはやめれと。
0995デフォルトの名無しさんNGNG
前スレあたりで、ループカウンタにCurrency使ってトラブってる例があったぬ
0996デフォルトの名無しさんNGNG
Currencyだと数値と意味が違ってくる可能性があるからよくないよね。
四則演算時に通貨としての精度で計算とかしてくれるんだっけ?(小数計算とか・・・)
0997デフォルトの名無しさんNGNG
Dim i, j as Integer
って書いたらiはIntegerになってくれると、
勘違いして書いてた次期がオレにあるのは内緒だ。
0998デフォルトの名無しさんNGNG
>>997

えーーー 違うの?!
0999デフォルトの名無しさんNGNG
999
1000デフォルトの名無しさんNGNG
1000げっとーっ
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。