前のログ 次のログ

No.2750 VBとSQLを使って一週間前を検索  投稿者:匿名 [01/9/11(火)22:40分]

 まだプログラミングをはじめて間もないので教えてください。

 お願いします。
 今、VBとSQLを使ってデータベースから読み込んで、納入日から一週間前のやつだけをひっぱてくる。
 というのをやっているのですが、この仕事をはじめたばかりなので、さっぱりわかりません。
 自分なりにインターネットで調べて 

'" & txtHinban.Text & "' and HACHDR.D8NKDY = TO_NUMBER(to_char
(to_date('" & imDNounyu.Text & "', 'YYYYMMDD') + 7,'YYYYMMDD'))

 
 こうゆうのを書いたんですが、うまくいきません。本当に困ってます。
 お願いします。教えてください。


No.2749 数学関数  投稿者:こたつ [01/9/11(火)22:21分]

どうも。三角関数ですが、asin,acos をVBで算出する方法を教えて下さいm(_ _"m)

No.2748 Re:ダブルクッリクでの処理は?    投稿者:ばっさー [01/9/11(火)20:05分]

ゆう(U)さん早速のレスありがとうございます。

私の説明不足でした。すみませんでした。

ダブルクリックしたい場所はデスクトップ上のアイコンです。
「DirListBox コントロール」でできるのでしょうか?
ヘルプを再度調べてみます。

ヒントありがとうございました。

No.2747 CPU稼働率(負荷率)の取得方法  投稿者:さおとめ [01/9/11(火)18:39分]

たびたびすいません!


CPU稼働率(負荷率)取得方法をご存じの方いらっしゃいませんか?

メモリの使用率は取得できたのですがCPU稼働率の取得ができません。

よろしくお願いいたします。

No.2746 POP3 サーバーのアクセスについて  投稿者:さおとめ [01/9/11(火)18:30分]

ご存じの方いらっしゃいましたら、教えたください。


VBでPOP3サーバーにサクセスする方法をご存じの方はいらっしゃいませんか?

メールチェッカーを搭載したソフトを作成中です!
現在は、フリーの"*.dll"ファイルから参照して行っています。
"*.dll"でも動作には問題ないのですが、できればVBのみで作成したいのですが・・・
(コピーを忘れるとオートメーションエラー等が発生)

C++のサンプルソースはよく見かけますが、VBが見つかりません。
(VBでは、できないのでしょうか?)

質問2(*.dllの参照の仕方)
○参照設定で参照先に指定していますが、*.exeを他のPCで動作すると参照がうまくいきません。
・*.dllファイルは、*.exeファイルのフォルダーでは、問題なのでしょうか?
・c:\winnt\system32 の下にコピーした場合、再起動が必要なのでしょうか?
(*.dllファイルをsystem32の下にコピーしても動作しないことがあります)
・'98,Meの場合は、systemの下にコピーでいいのでしょうか?

開発環境:Windows2000,VisualBasic6

質問多くなりましたが、ご存じの方、よろしくお願いいたします。

No.2745 Re:フォームの表示方法について  投稿者:さおとめ [01/9/11(火)18:14分]

ゆう(U)さん ありがとうございました。


単純に ControlBox = False ,Caption="" の設定でよかったです!
(この方法を知りませんでした)

まだまだ、勉強が足りませんね!

No.2744 VBでExcelのデータを使うとき。  投稿者:tyko1999 [01/9/11(火)14:48分]

はじめまして,まだはじめたばかりの初心者です。


VB6でMSFlexGridを使用して,エクセルのデータを読み込みました。

その時,VB上で行と列の数を指定して,
列の合計と平均を表示させるようなプログラミングを作りたいのですが,
読み込んだデータをどうやって計算に使えばいいのかわかりません。

またそのデータを,MSFlexGrid上に挿入することも可能なのですか?

質問がわかりにくいかもしれませんが,
どうかよろしくお願いします。

No.2743 Re:ダブルクッリクでの処理は?  投稿者:ゆう(U) [01/9/11(火)13:53分]

> 早速の質問で恐縮ですが、ダブルクリックによるフォルダーの処理で悩んでいます。

> やりたい事は主に、フォルダーをダブルクリックしたらそのフォルダーのプロパティといいますか
> ディレクトリ(フルパス)を取得したいのです。
どこのフォルダーをダブルクリックするのでしょうか?

エクスプローラーおよびIEなどで表示されているフォルダー?
自アプリ内の「ディレクトリリストボックス」のフォルダー?

「DirListBox コントロール」であれば、プロパティをよく
調べてみてください。

No.2742 Re:MSFlexGridで・・・  投稿者:ゆう(U) [01/9/11(火)13:41分]

●半角カナの使用は止めたほうがいいです


> 早速ですが、現在MSFlexGridを使って、通信で受信したデータの履歴を表示するような
> プログラムを作成しています。
>
> ・・・で、スクロール機能を設けようと思い、参考にさせてもらったのですが、
どのコントロールですか?

「MSFlexGrid コントロール」なら、カレントセルが表示領域外でも
矢印キーでスクロールして表示すると思いますが?
※スクロールバーもあるのでMouseでも操作可能ですし・・・
 行単位の履歴であれば、選択モードは"Row"アクティブセルは"None"
 にしておけば

> 矢印キーだけ、うまくKeyDownイベントを取得することができないのです。
フォーカスが「MSFlexGrid コントロール」にあるときは、スクロール
制御の為矢印キーのキー操作イベントは発生しません。

> あれ?と思って、KeyDownイベントを確認するように簡単なプログラムを作ったら、
> 今度は取得できました。
何のコントロールでの話ですか?
特定のコントロール以外「矢印キー」のキー操作イベントは
発生しないはずです。
※コマンドボタンやチェックボックス等では不発生

Tabキー同様、コントロールのフォーカス変更に使用されて
いますから。
※Tabキーは全てのTabStopをFalseにする事で、イベントを
 発生させられますが・・・

「MSFlexGrid コントロール」を表示だけで使用し、矢印キー
ですぐにスクロール動作をさせたいのであれば・・・
※Mouse操作は出来なくなりますが

「PictureBox コントロール」をコンテナーとして、グリッドは
常にEnabled=Falseで管理してはいかが?
このコントロールでなら、矢印キーのイベントを取得できます。
※矢印キーにあわせて先頭表示行等を変更・・・って感じ

No.2741 ダブルクッリクでの処理は?  投稿者:ばっさー [01/9/11(火)11:45分]

皆さんこんにちは。


早速の質問で恐縮ですが、ダブルクリックによるフォルダーの処理で悩んでいます。
やりたい事は主に、フォルダーをダブルクリックしたらそのフォルダーのプロパティといいますか
ディレクトリ(フルパス)を取得したいのです。
いろいろなHPやAPIライブラリなどで調べたのですが、解りませんでした。

どなたかご教授お願いします。
よろしくお願いします。

No.2740 MSFlexGridで・・・  投稿者:china [01/9/11(火)11:39分]

はじめまして。こんにちは。

困ったときは、いつも参考にさせていただいています。

早速ですが、現在MSFlexGridを使って、通信で受信したデータの履歴を表示するような
プログラムを作成しています。

・・・で、スクロール機能を設けようと思い、参考にさせてもらったのですが、
矢印キーだけ、うまくKeyDownイベントを取得することができないのです。
あれ?と思って、KeyDownイベントを確認するように簡単なプログラムを作ったら、
今度は取得できました。
ちなみに、このプログラムでは、Escでアプリケーション終了、Spaceで受信データの削除をするように
なっています。

どうしてでしょうか???

No.2739 Re:メニューエディターの入力法ほか  投稿者:ゆう(U) [01/9/11(火)10:16分]


> 「リスト37 データを Test.dat に書き込む
>
> Private Sub File1Write()
> :
> End Sub
このプロシージャはフォームのコード部に書く。

> リスト37を FileCheck に挿入し、これを実行するためにメニューに「ファイル作成(M)」,
> mnuWrite を作成します。メニューには「END(X)」、mnuENDも作りmnuEND_ClickENDプロシージャに
> ENDのコードを書いておきます。
メニューエディターで上記のメニュー項目を作成します。
※メニューエディターの使用方法はヘルプ(MSDNライブラリ)
 をご覧下さい。

> メニューを作るくだりで、
> 「『ファイル作成(M)』,mnuWrite を作成します。」
> という部分は
> 「『キャプション』に『ファイル作成(M)』、
> 『名前(M)』に『mnuWrite』という文字を
> それぞれ入力するという意味と解釈し、そうしました。
タブンOKだと思いますが、ヘルプで確認ください。
※『ファイル作成(&M)』と入力する方がいいです。
※メニューエディターはメニュー部のみの作成で、
 中のコードはあくまでコードエディターで作成
 します

> 次にエディターの下欄にメニューキーの設定コードとして
>
> 「
> Private Sub mnuWrite_Click()
> :
> End Sub 」
>  
>  というコードを書き込もうとしました。
>  (これでいいのかどうか自信はないのですが)
>  しかし、ポインターを下に移動させると、
>  『キャプション』や、『名前(M)』に入力した文字が
>  消えてしまうのです。
>  また、下欄に文字を打ち込むことができません。
これがわかりません???

ポインターを下に移動とは?
文字が消える?
下欄?

フォームエディター内でフォームに表示されたメニューを
クリックするとコードエディターへ移動できますが?

>  現在私が使っている本は、
初心者向けではない様ですし、コードもあまりキレイ
ではないです。
※解説向けのコードでは無く思います

変数のデータ型はAs句で書く方が初心者ではなくとも
わかりやすいですし・・・
改行(CrLf)はVBで定義されているのにわざわざ変数に
して使用するのは疑問ですから・・・

まぁ、参考書はご自身の目で本屋さんで探すのが一番でしょう
ざっと立ち読みするだけでわかりやすいと感じる物があれば
実際にサンプル等を動作させれば、より理解できるのでは?

No.2738 RE:メニューエディターの入力法ほか  投稿者:MIZO [01/9/11(火)9:58分] http://www6.ocn.ne.jp/~mzworks

ざっと見たところ、あまりいい参考書とは・・・(^^ゞ

CRLF$などとわざわざ宣言しているところから見て参考書自体、古いバージョン用ではありませんか?
時間があればサンプルなどご提示できるのですが、なにぶん会社からなもので・・・。
ただリスト37,38というのはコードエディターに書くんですよ。メニューエディターではありません。
今は参考書の紹介にとどめておきます。

私のおすすめは技術評論社の「Visual Basic 6.0 初級プログラミング入門(上下) :河西朝雄著」ですね。

http://www2.gihyo.co.jp/books/bookinfo.asp?ID=678

バージョン5.0の本でしたが基本的な事は全てこれ一冊で覚えました。
初めの頃は上巻だけでも構わないと思いますよ。下巻は主に応用や進んだ使い方の解説ですから。

No.2737 Re:フォームの表示方法について  投稿者:ゆう(U) [01/9/11(火)9:35分]

> フォームを表示させたくない場合(タイトルバーをもたない)

> BorderStyle の設定を"0-なし"とすればいいと思うのですが・・・
>
> PopUpMenu を設定すると、タイトルバーが表示されるようになります。
フォームの境界線をなくしたいのでしょうか?
タイトルバー(キャプション部)を非表示でしょうか?

> なぜでしょうか?(他に方法はありませんか)
VBの仕様ではメニューがあるとタイトルバー(境界線)を
なしに出来ないようです。

メニューを別のメニュー専用フォーム(仮名)に作成し
PopUpMenuではそのフォームからメニューを流用する。

もしくはAPI関数でフォームのスタイルを変更すると
OKでしょう・・・
ここの「逆引きヘルプ」でタイトルバーに関する物を
読んでみてください。

No.2736 メニューエディターの入力法ほか  投稿者:靴下カタオ [01/9/11(火)1:05分] http://www.kenashizuka.com/

前回はどうもありがとうございました。

あれからまだ同じ参考書を使っていて、
用語の理解も不十分なので心苦しいのですが、
できればまた教えていただければうれしいです。

ある参考書で Visual Basic を勉強していますが、
参考書に書いてあることが理解できず困っています。
(申し訳ありませんが、今回は質問の内容が曖昧です)
ご面倒とは思いますが、以下を読んでいただいて、
アドバイスしていただけないでしょうか。

メニューの作り方に関して次のような記述があります。

「リスト37 データを Test.dat に書き込む

Private Sub File1Write()
Dim SSS$, I%, J%, V!
SSS = "ファイル書き込み練習"
Open FilePath + "\" + "Test.dat" For Output As #2
Write #2, SSS
For I = 1 To 100
Write #2, I
Next
For J = -4 To 4
V = 1# * (10 ^ J): Write #2, V
Next
Close
End Sub

リスト37を FileCheck に挿入し、これを実行するためにメニューに「ファイル作成(M)」,
mnuWrite を作成します。メニューには「END(X)」、mnuENDも作りmnuEND_ClickENDプロシージャに
ENDのコードを書いておきます。
ここでプロシージャmnuWrite_Click ()には、ファイルを作成する場合の警告をメッセージボックスで
作成します。これをリスト38に示します。

リスト38 ファイルを書き込む前にフォルダーをチェックする

Private Sub mnuWrite_click()
CRLF$ = Chr(13) + Chr(10)
If FilePath = " " Then
A% = MsgBox("ファイルを作成する") + CRLF$ + FilePath_
+ CRLF$++_("フォルダーが選択されていません",16)
Exit Sub
Else
A% = MsgBox("このフォルダー:") + CRLF$ + FilePath_
+CARF$+("に作成してよろしいですか?",4)
If A% = 7 Then Exit Sub
End If
FileWrite
End Sub 」

というものです。これだけ読んでいただいても
全てをわかっていただけないかも知れませんが、
メニューを作るくだりで、
「『ファイル作成(M)』,mnuWrite を作成します。」
という部分は
「『キャプション』に『ファイル作成(M)』、
『名前(M)』に『mnuWrite』という文字を
それぞれ入力するという意味と解釈し、そうしました。
次にエディターの下欄にメニューキーの設定コードとして


Private Sub mnuWrite_Click()
CRLF$ = Chr(13) + Chr(10)
If FilePath = " " Then
A% = MsgBox("ファイルを作成する") + CRLF$ + FilePath_
+ CRLF$++_("フォルダーが選択されていません",16)
Exit Sub
Else
A% = MsgBox("このフォルダー:") + CRLF$ + FilePath_
+CARF$+("に作成してよろしいですか?",4)
If A% = 7 Then Exit Sub
End If
FileWrite
End Sub

 Private Sub mnuEND_Click ()
End
End Sub 」
 
 というコードを書き込もうとしました。
 (これでいいのかどうか自信はないのですが)
 しかし、ポインターを下に移動させると、
 『キャプション』や、『名前(M)』に入力した文字が
 消えてしまうのです。
 また、下欄に文字を打ち込むことができません。

 この部分が解決したとしても、
 次の、以下のような記述
 「これでメニューの mnuWrite (Y)」を
 クリックしてみてください。」
 があって、これがどういうことなのかがわかりません。
 
 以上、基礎知識がないままに質問していますので、
 理解していただくのは難しいかも知れませんが、
 何かわかることがあれば教えていただきたいのです。
 
 現在私が使っている本は、
 「速習! Visual Basic プログラミング 」(CQ出版)
 ですが、これでも、なかなかスムーズにいきません。
 Microsoft Visual Basic 6.0 の製品版を使って
 学習するとしたらどんな参考書がいいか、
 よろしかったら推薦していただけないでしょうか。

No.2735 表のように  投稿者:kou [01/9/10(月)16:51分]

こんにちは。


今、データレポートにてレポートの出力処理のコーディングを
しています。
そこでなんですがレポート形式をエクセルで出来るような罫線の
枠組みで囲みたいんですけど出来ません・・・。

どなたか分かる方がいましたら力を貸してください。
よろしくお願いします。

No.2734 フォームの表示方法について  投稿者:さおとめ [01/9/10(月)12:33分]

はじめまして、


フォームを表示させたくない場合(タイトルバーをもたない)
BorderStyle の設定を"0-なし"とすればいいと思うのですが・・・

PopUpMenu を設定すると、タイトルバーが表示されるようになります。

なぜでしょうか?(他に方法はありませんか)

VBがそういった仕様の場合、リージョンを使用して非表示にするしか
無いのでしょうか???

よろしくお願いいたします。

No.2733 MS−IME2000  投稿者:匿名 [01/9/10(月)9:30分]

はじめて書き込みさせて頂きます。Win系初心者です。

よろしくお願いします。
IME2000のユーザー辞書に対して、単語/用例の登録画面及びAPIを使用して
参照、登録、削除を行おうと思っています。
IME2000からユーザーコメントという項目がありますが、APIにはありません。
従って、画面からの操作とAPIからの操作で整合性が取れなくなります。
読み、語句、品詞だけでなくユーザーコメントもキーとして使用しているようです。
(読み、語句、品詞が同じでもユーザーコメントが違えば登録できる。)
APIで登録語句を列挙後、APIで削除しようとするとエラーになります。
ユーザーコメントを画面から入力しないで使用すれば問題ありません。
ユーザーコメントを使用しても操作可能なAPIがあればご教示お願いします。

No.2732 RE:テキストボックスの入力行数制限    投稿者:TOMO [01/9/09(日)20:58分]

おせわになっています。

そちらのほうを参考にさせていただきます。
過去ログは目を通したのですが、そちらを見落としていました。

お手数かけてすみませんでした。

No.2731 RE:テキストボックスの入力行数制限  投稿者:花ちゃん [01/9/09(日)9:42分]

テキストボックスの総行数を知りたければここのHPの文字列処理関係の

テキストボックスの総行数・現在行・現在桁の取得 を見て下さい。
   

No.2730 RE:テキストボックスの入力行数制限    投稿者:TOMO [01/9/08(土)23:43分]

ご教授ありがとうございます。


テキストボックスに入力後、確定ボタンを押した時点で
「行数オーバーです」などのメッセージを出したいと思っております。

ボタンを押した時にテキストボックスの内容からvbCrLfコードを探せばいいわけですね。
ちょっと考えてみます。
具体的に良い方法があればまたアドバイスお願いします。
ありがとうございました。

No.2729 RE:テキストボックスの入力行数制限  投稿者:MIZO [01/9/08(土)22:22分] http://www6.ocn.ne.jp/~mzworks

文字数ならばMaxLengthですが・・・行数ですよね?


Text_Change()か何かでTextの中のvbCrLfコードを
数えたらどうでしょう?
設定数を超えたらアラーム表示するとか。

No.2728 テキストボックスの入力行数制限  投稿者:TOMO [01/9/08(土)22:15分]

こんにちは。質問させていただきます。


テキストボックスに入力できる行数を制限したいのですが、
いい方法がないでしょうか。
よろしくお願いします。

No.2727 RE:ListView:複数Keyのソートについて  投稿者:MIZO [01/9/07(金)21:57分]

サンプルを作り確認したところ、ちゃんと動いているようでしたが・・・?


ブレイクポイントを一回目と二回目のソートの間に設定して
動作を確認してみてはいかがでしょう?

ちなみにlvwAscendingは昇順ソートですが・・・いいのですか?
コメントには降順ソートと書いてありましたので(^^ゞ

No.2726 VBでExcelの操作  投稿者:匿名 [01/9/07(金)21:26分]

始めまして、いつも参考にさせて頂いております。


早速ですが、質問です。
VB6からExcelを操作する際にEXCELを非表示のまま
書き込みしてから表示させてExcel自体ではなく
Bookを閉じると強制終了エラーになります。
以前のログでExcelをCreateObjectしてから
VisibleをTrueにするとエラーにならないとありました。
その方法を使用するとエラーにならないのですが、
書き込みをしている際にタスクバーにあるExcelを
閉じられたときのことを考えるとなるべくなら
非表示のまま書き込みをして最後に表示したいのですが、
何か良い方法はないでしょうか?
ご教授よろしくお願い致します。

No.2725 ListView:複数Keyのソートについて  投稿者:匿名 [01/9/07(金)18:06分]

MIZO さんありがとうございました。

バッチリです (^^\

もう1つ質問があるのですがお願いします m(_ _)m

ListView:複数Keyのソートについて

ListViewでソートKeyを設定できますが。
プロパティで設定できますが
1つの列番号しか設定できません。
2つ以上のKeyを設定する事は可能でしょうか?

下記の方法で試して見たのですが
どうも、うまくいってないような気がするのですが
どうでしょう?

  '* プロパティのSortedはFalseにします。

'*-----------------------------------------------------------
'* ソート処理
'*-----------------------------------------------------------
ListView1.Sorted = True ' ソートを有効にする
ListView1.SortKey = 1 ' 1番目の列番号
ListView1.SortOrder = lvwAscending ' 降順ソート

ListView1.SortKey = 2 ' 2番目の列番号
ListView1.SortOrder = lvwAscending ' 降順ソート

'*-----------------------------------------------------------
'* 一覧の最終行を表示
'*-----------------------------------------------------------
ListView1.ListItems(FormExec.ListView.ListItems.Count).EnsureVisible


No.2724 ListView:複数Keyのソートについて  投稿者:匿名 [01/9/07(金)17:49分]

MIZO さんありがとうございました。

バッチリです (^^\

もう1つ質問があるのですがお願いします m(_ _)m

ListView:複数Keyのソートについて

ListViewでソートKeyを設定できますが。
プロパティで設定できますが
1つの列番号しか設定できません。
2つ以上のKeyを設定する事は可能でしょうか?

下記の方法で試して見たのですが
どうも、うまくいってないような気がするのですが
どうでしょう?

  '* プロパティのSortedはFalseにします。

'*-----------------------------------------------------------
'* ソート処理
'*-----------------------------------------------------------
ListView1.Sorted = True ' ソートを有効にする
ListView1.SortKey = 1 ' 1番目の列番号
ListView1.SortOrder = lvwAscending ' 降順ソート

ListView1.SortKey = 2 ' 2番目の列番号
ListView1.SortOrder = lvwAscending ' 降順ソート

'*-----------------------------------------------------------
'* 一覧の最終行を表示
'*-----------------------------------------------------------
ListView1.ListItems(FormExec.ListView.ListItems.Count).EnsureVisible


No.2723 msflexgrid  投稿者:ゴジオ [01/9/07(金)16:43分]

はじめて投稿します。

よろしくおねがいします。

質問
msflexgridを使ってデータを表示させています。

1行目にFixedColsをつかって固定し
列の見出しを表示させているのですが

その部分にマウスをあてドラッグしたまま少し左右にずらすと
グリッドのカーソルが上に動いてしまいます

これをとめるにはどうすればいいのでしょうか?


No.2722 MSチャートのXY(散布図)について  投稿者:TOM [01/9/07(金)16:22分]

チャートタイプをXY(散布図)にすると、マーカーが赤の ”+”になるのですが、

このマーカーの色と記号を変える事は出来るのでしょうか。
よろしくお願いします。

No.2721 Re:VBからエクセルの操作    投稿者:VB太郎 [01/9/06(木)18:20分]

参照設定でMicrosoft Excel 9.0にチェックをいれて

以下のように変数を定義します
Dim wExcel As Excel.Application
Dim wWorkBooks As Excel.Workbook
Dim wWorkSheets As Excel.Worksheet
Dim wCheck As Excel.OLEObject

Set wExcel = New Excel.Application
Set wWorkBooks = wExcel.Workbooks.Open("D:\Book.xls")
Set wWorkSheets = wWorkBooks.Worksheets(1)
Set wCheck = wWorkSheets.OLEObjects(1)

MsgBox wCheck.Object.Value
wExcel.Quit

Set wExcel = Nothing
Set wWorkBooks = Nothing
Set wWorkSheets = Nothing
Set wCheck = Nothing

※注)Excelのチェックボックスは チェック:True 未チェック:Falseです。


No.2720 RE:ListView最終行の表示  投稿者:MIZO [01/9/06(木)15:30分] http://www6.ocn.ne.jp/~mzworks


最終行を表示します。

ListView1.ListItems(ListView1.ListItems.Count).EnsureVisible


No.2719 ListView最終行の表示  投稿者:匿名 [01/9/06(木)14:31分]

ListViewを使ってデータを表示しています。

最終行にジャンプする方法を知りませんか?

No.2718 コンボでの残像の件  投稿者:ばっさー [01/9/06(木)11:04分]

以前コンボに可変データを読み込んだ時に残像が残ってしまうという件で投稿した者です。


ゆう(U)さんとぽこぽんさんの協力と指導によって無事解決しました。
ずっと悩んでいたので、できた時は感激しました。
お二方には本当に感謝、感謝です。
どうもありがとうございました。

No.2717 Re:スタートアップフォームまたは Sub Main() が必要です  投稿者:ゆう(U) [01/9/05(水)21:47分]

どうも文章からはプロジェクト・フォーム・プロシージャが

ごちゃ混ぜに使用されているように読み取れますが・・・

その辺は理解されていますか?


新規で標準Exeを作成するとフォーム一つだけの
プロジェクトが作成されるはずです。

もしかしてフォームも何も無い状態で、標準モジュール
を新規に追加しそこでAプロシージャ等を作成したのですか?
※途中でフォームを削除(解放?)したせいで
 Sub Mainがスタートアップになったのに
 気づかなかったとか?

標準モジュールしかない場合、MainというSubプロシージャを
作成しそのプロシージャで何らかのアクション(処理:コード)
を書かないと何も動作するものが見つからなくて先のエラーを
発生させます。
※Sub Mainがあれば中身が空でもエラーは
 発生しません

フォームを後で追加した場合、そのフォームをLoad(Show)する
にはSub MainでLoad(Show)するか、プロジェクトのプロパティ
にあるスタートアップの設定でフォームを指定するかです。

まずはプロジェクトのプロパティをご覧下さい。


複数のプロジェクトをまとめたグループというものもありますが
入門の段階では単一プロジェクト(標準Exe)を理解する程度で
良いと思います。
※プロジェクト グループでの連携は製品版を購入されてから…

No.2716 MSチャートの3Dグラフ  投稿者:コザック [01/9/05(水)20:22分]

MSチャートを使用して3Dのグラフを表示したいのですが、

3Dグラフは全体的に小さくて見にくいです。
どうにかして大きくする方法はないのでしょうか。
列のラベルはほとんど読めません。こんなものなのでしょうか?
どなたかお分かりになる方がいらっしゃいましたら
教えてもらえませんでしょうか。

No.2715 『スタートアップフォームまたは Sub Main() が必要です  投稿者:靴下カタオ [01/9/05(水)2:31分] http://www.kenashizuka.com/

Visual Basic を勉強していますが、

何か間違いがあってうまくいきません。
できれば以下を読んでいただいて、
アドバイスしていただけないでしょうか。

ある本を買って添付のCD−ROMから
Visual Basic 6.0の評価版をインストールして
プログラム作成の練習をしています。

Aというプロシジャを作成し、
これと同じプロジェクトの中に
Bというプロシジャを作って実行したところ、
Bではなく、Aのフォームが表示されるようになりました。
それでBを別のプロジェクト内に作成、実行すると、
「スタートアップフォームまたは Sub Main() が必要です」
というメッセージを表示後
「メモリが不足しています」
というメッセージを表示して終了します。

「Bではなく、Aのフォームが表示される」
というエラーと、
「『スタートアップフォームまたは Sub Main() が必要です』
というメッセージを表示」するエラーは
個々に考えるべきなのかも知れません。

ここで、気が付いたことは、
本にはプロシジャは Vb98 の中の Cq という
フォルダーの中にできる、とあるのですが、
自分で作ったものはすべて Vb98 の中にでき、
User や Cq の中には何もできていないということです。

以上を読んでいただいて、何かお分かりになることがあれば、
お教えいただければ幸いです。
何卒よろしくお願いいたします。

No.2714 Re:検証よろしくお願いします  投稿者:ゆう(U) [01/9/04(火)19:41分]

サンプルを動作させるのに一手間かかりましたが・・・

※説明と初期値を設定するコードがほしかった

結果ですが・・・

ただのGotFocusではなく、ドロップダウンリストを
表示させた場合ですね?

この時の残像現象はしようがないと思います。
Tab等でフォーカスを移動してからなら、ドロップダウン
リストを表示させても残像は発生しませんから・・・
※RefreshやDoEventsでも解決できませんでした

解決策にはなりませんが、リスト変更の条件が
確定するコントロールのLostFocusでリストの
内容の変更をした方がいい気がします。

No.2713 圧縮ファイル Tarについて  投稿者:Dad [01/9/04(火)13:16分]

VBで Tarを解凍する方法が(構文)解らないので

どなたか教えていただけないでしょうか?

No.2712 圧縮ファイル Tarについて  投稿者:Dad [01/9/04(火)12:15分]

VBで Tarを解凍する方法が(構文)解らないので

どなたか教えていただけないでしょうか?

No.2711 VBからエクセルの操作  投稿者:匿名希望 [01/9/04(火)2:16分]

はじめまして、

早速ですが質問です。
VBからエクセルを操作する際に
エクセルのセルの情報は取得できるのですが、
チェックボックスの情報の取得(チェック、未チェック)
の仕方がわかりません、どなたかご存知の方が
いらっしゃればお教え下さい。

No.2710 ゆう(U) さんへ検証よろしくお願いします  投稿者:ぽこぽん [01/9/03(月)17:40分]

割り込んですみません。

それぞれのIF文のあとに、以下のコードを追加してみて下さい。

i = Combo2.ListCount - 1
Do While i >= 0
Combo2.RemoveItem i
i = i - 1
Loop

#あまり、名指しはよくないかと…

No.2709 ゆう(U) さんへ検証よろしくお願いします  投稿者:ばっさー [01/9/03(月)16:49分]

返事が遅くなって大変申し訳ございません。
もし、ゆう(U) さんが見ていらしたら簡単なサンプルを作成したので検証よろしくお願いします。


Option Explicit

Dim Test_Flg    As Integer

Private Sub Combo2_GotFocus()

    Dim i           As Integer



    If Combo1.Text = "A" Then

        Combo2.Clear

        For i = 0 To 10

         Combo2.AddItem (i)

        Next i

    ElseIf Combo1.Text = "B" Then

        Combo2.Clear

        For i = 0 To 2

         Combo2.AddItem (i)

        Next i

    End If

End Sub

No.2708 Re:並行処理について  投稿者:ベル [01/9/03(月)12:27分]

ゆう(U)さん、ありがとうございます。


>現在の1ファイル単位の処理を、如何に高速化するかを
>検討する方が全体の処理速度の向上につながると思います。

わかりました、もう一度見直してがんばってみます。
ありがとうございました。

No.2707 Re:並行処理について  投稿者:ゆう(U) [01/9/02(日)23:35分]

> ゆうさん、さっそくのレスありがとうございます。

ゆう(U) でお願いします。

> ファイルリストコントロールボックスをそれぞれ2つあるいは3つずつ
> Formに表示して、ファイルを全部選択した後、抽出する操作を行っています。
> 現在では、「A」フォルダーの中身をループを使って抽出した後に、
> 「B」のフォルダーの中身を抽出するような命令になってます。
> これを、「A」、「B」同時にあるいは並行して抽出するようにすれば
> より早く処理が終わるのではと思い、質問させていただきました。

2つの処理(ファイル数はそれぞれ複数)を行う途中で人の手を
介入していないのであれば処理速度はコードに依存すると思います。

並行作業にしたとしても現在のコードより処理速度が短くなるとは
思えません。
※処理の切り替えが時間が発生しますし、ファイルのアクセスが
 分断されるためハード的にも余計な動作が必要に思うので

現在の1ファイル単位の処理を、如何に高速化するかを
検討する方が全体の処理速度の向上につながると思います。
※1ファイル単位で交互に処理していくなどの方法も…

No.2706 Re:並行処理について  投稿者:ベル [01/9/02(日)0:20分]

ゆうさん、さっそくのレスありがとうございます。

ちょっと説明不足のようですみませんでした。
やっていることは、例えば、「A」というフォルダーの中に
10個のファイルがあります。そして「B」というフォルダーにも
20個のファイルがあります。そこからそれぞれのフォルダーの中の
ファイルから抽出する操作を行っています。ただし、
フォルダーの名前とそれぞれのファイル名を抽出した中身に
書き込まなければなりません。そのため、ディレクトリコントロールボックスと
ファイルリストコントロールボックスをそれぞれ2つあるいは3つずつ
Formに表示して、ファイルを全部選択した後、抽出する操作を行っています。
現在では、「A」フォルダーの中身をループを使って抽出した後に、
「B」のフォルダーの中身を抽出するような命令になってます。
これを、「A」、「B」同時にあるいは並行して抽出するようにすれば
より早く処理が終わるのではと思い、質問させていただきました。
と、このような内容ですが、ご理解いただけたでしょうか?
度々ですみませんが、よろしくお願いします。

No.2705 コマンドボタンを押したままの状態にする  投稿者:Take [01/9/01(土)23:49分]

どなたか?

VB標準のコマンドボタンのがありますが、これを押したまま
の状態を表示する方法をご存知ですか?

No.2704 Re:並行処理について  投稿者:ゆう(U) [01/9/01(土)23:32分]

●私的にはもう少し少ない文字数で改行されると読みやすいのですが…


> 行う、という感じです。これを並列処理(ファイルリストボックス1と2を 同時あるいは並行して処理を行う)にしたいのですが、
ファイルリストボックス1も2もやることは同じ様に読めますが、
何か違いがあるのでしょうか?

それと・・・同時もしくは並行して処理しなければならない理由は
何ですか?

私的には処理を行うファイルを全て選択した後に、抽出処理を一括で
行っていく方が流れ的にはスムーズになりそうに思います。


無理やり並行処理をするのであれば「DoEvents 関数」を上手く
使えば可能ですが、閉じる(×)ボタンの無効化など DoEvents の
弊害を回避するコードを書かなければいけません。

サンプル)
新たなプロジェクトで動作確認してください。
コマンドボタン(Command1)1個必要
Private Sub Command1_Click()
Do
DoEvents
Loop
End Sub

でクリック後に閉じるボタンを押してみると分かります、
プロシージャ実行中の為、フォームをUnloadできません。
※IDEの実行終了(■)で終了してください

No.2703 並行処理について  投稿者:ベル [01/9/01(土)18:07分]

はじめまして、ベルといいます。VB初心者なのですが、困っています。

条件による分岐処理ではなく、複数の処理を同時あるいは並行して行う方法を探しています。実は、
ファイルリストボックスの中の選択されたファイルを開き、特定の文字列を抽出して、
1つの別のテキストファイルにまとめる、という操作を行っています。
今は、複数のファイルリストボックス(ファイルボックス1、2)を使用して、
それぞれからファイルを選択して、抽出するということを行っていますが、
コードが直列になっています。というのも、まずファイルボックス1の中の
選択されたファイルから抽出を行い、別のテキストファイルにまとめます。
そして、その処理が終了したら、ファイルリストボックス2の中の選択された
ファイルから抽出を行う、という感じです。
これを並列処理(ファイルリストボックス1と2を同時あるいは並行して処理を行う)
にしたいのですが、どなたかよい方法をご存知の方がいましたらアドバイスをお願いします。

No.2702 Re:ラベル  投稿者:ゆう(U) [01/8/31(金)18:14分]

> タブダイアログコントロール内にラベルを配置しています。

> Aというタブ内にラベルが20個ほどありまして、
> そのラベルを他のBというタブでも表示させたいのですが、
> 何か方法はありますか?
ラベルのほかに別のコントロールを使用しているとかありますか?

すべてのタブの中身が同じような場合・・・

タブはAさん、Bさん、Cさん
中身は氏名、生年月日など

タブの内容がすべて同じであれば、タブダイアログコントロールを
コンテナーにせずに、「Frame コントロール」等をタブダイアログの
上(ZOrder)に配置し、そのFrame コントロールをコンテナーとして
ラベルコントロールを全て配置してはいかが?

タブが変更されても内容部分にはFrameコントロールが重なって
いるだけなので常にFrame コントロールが表示されるので、
タブの変更で、ラベルの内容を変更するだけでどのタブでも
同じラベルコントロールが見えている状態になります。


他のコントロールが部分的に存在するような場合は・・・
前にあるタブをコンテナーとして変更するコードを元に、
毎回コンテナーのタブを変更してしまえばOKでしょう。
※20個ラベルがあれば20個分のコンテナー変更のコードを書く

※タブ内容の半分だけにそのラベルが固まってあるとかで
 あれば、一度Frameコントロール等をコンテナーにしてから
 目的のタブをそのFrameのコンテナーに設定するとコンテナーの
 変更は一回ですむことになります

No.2701 Re:コンボボックス残像についての  投稿者:ゆう(U) [01/8/31(金)17:53分]

動作確認が出来る簡単なコードを添付していただけませんか?


前のログ 次のログ


VBレスキュー(花ちゃん)
Visual Basic6.0  VB6.0