前のログ 次のログ

No.3700 Re:テキストファイルをメモ帳で開いて  投稿者:ゆう(U) [02/1/22(火)10:58分]

> テキストファイルをメモ帳で開いて、上書き保存してメモ帳を終了する、という処理を
>VBで自動化することは

フォーカスをあてて「SendKeys ステートメント」で
CTRL+Sで上書き、ALT+F4で終了とか・・・

No.3699 テキストファイルをメモ帳で開いて・・・  投稿者:りゅう [02/1/22(火)2:31分]

テキストファイルをメモ帳で開いて、上書き保存してメモ帳を終了する、という処理を
VBで自動化することは可能なのでしょうか?
shell関数を使用して、メモ帳からテキストファイルを開くところまではできるんですが・・・

No.3698 Re:実行時に、コントロールをsstabに貼り付ける方法  投稿者:ゆう(U) [02/1/22(火)1:39分]

> Set Text1.Container = SSTabのようにするとうまくいきましたが、

どのタブの場合も上記の通りです・・・

先に目的のタブを決めておくだけだったはず。
※TabだかTabsだったかで現在のタブを
 指定するプロパティがありましたよね?

No.3697 RE:実行時に、コントロールをsstabに貼り付ける方法  投稿者:kiiya [02/1/22(火)0:33分]

Set Text1.Container = SSTabのようにするとうまくいきましたが、

sstabが3つのtabを持っている時、1番目2番目3番目は
どのように区別するのでしょうか?
sstab(0),sstab(1),sstab(2)ではだめでした。

No.3696 "58" ランタイムエラ処理方法解決しました。    投稿者:初心者 [02/1/21(月)22:12分]

Lantern さん 

適切なアドバイスをいただきありがとうございました。
おかげで無事に解決しました。

ありがとうございます。

No.3695 WiNT・Win95でIPアドレス情報を取得する方法  投稿者:コタ [02/1/21(月)19:06分]

現在、IPアドレス・GW・WINS・DNS情報を取得し、レジストリを書き換えるPGを

作成しているのですが、Win98・2000に関しては、情報の取得はできたのですが、Win95・NTの
場合の取得方法がどうしてもわかりません。

どなたかWIN95・NTの場合の、上記情報の取得方法をご存知でしたらお教えください。
また、書き換えに関してもお教え頂ければ幸いでございます。
宜しくお願いいたします。

No.3694 RE:word に jpg 貼り付け  投稿者:花ちゃん [02/1/21(月)18:25分]

>件名のとおりですが

>アルバムっぽくword に jpg写真を貼り付けたいのですが
>一体どうやればいいでしょうか?

一体なにが解らないのでしょうか?
漠然とした質問されますと回答者はどのように答えたらいいか解りません。
ここの(左のフレーム)のExcel&Word関係はご覧になりましたか?
多分、ヒントがあるかと思います。
再度、本当に解らない部分に絞って質問願います。
すべてが解らないなら、まずVBからWordを起動することから質問するとか

No.3693 word に jpg 貼り付け  投稿者:ya [02/1/21(月)16:54分]

件名のとおりですが

アルバムっぽくword に jpg写真を貼り付けたいのですが
一体どうやればいいでしょうか?

No.3692 UserControlからのモーダルフォーム表示  投稿者:フル助 [02/1/21(月)16:51分]

どうもです。

下のような処理を行っているのですが、そのなかで悩んでいます。
※UserControlは IE で表示しています
(1)UserControlからクラスを作成します
(2)作成したクラスからモーダルフォームを呼び出します。
(3)呼び出したフォームの中でHPアドレスを選択してフォームを閉じます
(4)選択したアドレスを IEの別ウィンドウで開きます。

、という処理を行っているのですが、この処理を実行して2回目以降必ず(2)の処理の
ところでのモーダルフォームが、UserControlの背面にまわってしまいます。
(2)のフォームを必ず前面に表示したいのですが、どなたか方法を教えてください。

・コードサンプル
※UserControl 内 コマンドボタン
Private Sub cmdMenu_Click()

Dim ClsF As Project1.ClsMenu
Dim ClsIE As Project1.ClsIEOpen

Dim IE As InternetExplorer
Dim tgtURL

'(1)クラス作成
Set ClsF = New Project1.ClsMenu

'(2)(3)フォーム表示 → 選択 ※処理は省いています
Call ClsF.Show
Set ClsF = Nothing

'アドレスをセット ※本当は選択した値
tgtURL="http://www.yahoo.co.jp/"

(4)開く
Set IE = CreateObject("InternetExplorer.Application")

IE.Navigate tgtURL
IE.Visible = True

Set IE = Nothing

End Sub

※フォーム表示クラス (Project1.ClsMenu.cls)
Private mForm As Form
Private mMode As Integer

Public Sub Show()

'フォーム表示
mForm.Show vbModal

End Sub

Private Sub Class_Initialize()

'表示フォームセット
Set mForm = New Project1.frmMenu

End Sub

Private Sub Class_Terminate()

Unload mForm

Set mForm = Nothing

End Sub

※フォーム (Project1.frmMenu.frm)
Private Sub cmdURL_Click()

'アドレス選択 ※省略

'フォームを非表示に
Me.Hide

End Sub

No.3691 RE:RE:強調表示の設定について   投稿者:ボーズ [02/1/21(月)16:27分]

すみません。

調べたところMergeCellsプロパティ設定していまうと
MSFlexGridの強調表示が強制解除してしまうらしい
です。ありがとうございました

No.3690 texyboxに式を出力させたいのですが・・・  投稿者:syou [02/1/21(月)15:45分]

初めまして、syouと申します。

これから何かとお世話になると思いますので
よろしくお願いします。

さて早速ですがお題の通りtextboxに式を出力したいのですが
どのようなプログラムを打てばよいでしょうか。
具体的にいいますと方程式(変数x、yとし残りの数は定数とする)を出力させたい
のですが・・・。
イミデット画面に出力する方法はわかります。
分かりにくいかもしれませんがよろしくお願いします。

No.3689 RE:強調表示の設定について  投稿者:花ちゃん [02/1/21(月)15:21分]

基本的事と思われる場合は 左のフレームの MSFlexGrid関係 や 逆引きヘルプ一覧で

調べて下さい。 ある程度自分で判る範囲は自分で調べた方が身につきますよ
とりあえず下記のコードを試して下さい。それでも強調表示されないなら、ここのサンプルとどこが
違うか調べて見て下さい。

.FocusRect = flexFocusNone
.HighLight = flexHighlightAlways

No.3688 RE:実行時に、コントロールをsstabに貼り付ける方法    投稿者:あき☆彡 [02/1/21(月)13:54分]

SSTabをコンテナーとして設定しましょう

【Container プロパティ】

No.3687 実行時に、コントロールをsstabに貼り付ける方法  投稿者:kiiya [02/1/21(月)13:11分]

改行を忘れたので改行して再送します。

プログラムでTEXTBOX等のコントロールを貼り付ける場合、
フォームに対してはうまくいきますがフォーム上のsstab等に貼り付けようとすると
、うまくいきません。(フォームのほうに貼り付く。)
のほうに貼り付けることはできないでしょうか?
よろしくお願いします。

No.3686 実行時に、TEXTBOXをsstabに貼り付ける方法  投稿者:kiiya [02/1/21(月)13:07分]

実行時に、プログラムでTEXTBOX等のコントロールを貼り付ける場合、
フォームに対してはうまくいきますがフォーム上のsstab等に貼り付けようとすると、
うまくいきません。(フォームのほうに貼り付く。)

sstabのほうに貼り付けることはできないでしょうか?よろしくお願いします。

No.3685 強調表示の設定について  投稿者:ボーズ [02/1/21(月)11:51分]

こんにちわ。

MsFlexGridを使っているのですが
セルを選択しても強調表示されません。
基本的な設定は下記のとおりです
 .HighLight = flexHighlightAlways
 .SelectionMode = flexSelectionFree
セル単体で選択可能にしています。
BackColorSelも正しく設定してあるのですが
セルは選択されますが色が付きません。
他に設定がありましたら教えていただけますでしょうか?
おねがいします。

No.3684 OracleのBLOB型画像をVBで表示させたい  投稿者:いわん [02/1/21(月)10:07分]

初めまして。いわんと申します。


VB6 & Oracle8.0.5 を使用しています。

早速質問なのですが、OracleのDBに取りこんだBLOB型の画像を、
きちんと取りこめたかどうか確認したいために
VBにて表示させたいのですが、どのようなコーディングを
行えばよいのでしょうか?

Oracleに接続するところまではできています。
(Oracleには以下の表に1行入っています。
 lob表・lob_no number(1),lob_b blob)


********************************

Option Explicit
Private cnn As ADODB.Connection
Private rec As ADODB.Recordset

Private Sub Form_Load()


Dim strUserID As String
Dim strPassword As String
Dim strDataBaseName As String

strUserID = "TESTUSER"
strPassword = "TESTPASS"
strDataBaseName = "TESTDB"

' ADOのオブジェクト変数を宣言する
Set cnn = New ADODB.Connection
Set rec = New ADODB.Recordset

' Oracleとの接続を確立する
cnn.Open "Provider=MSDAORA;User ID=" & strUserID & ";Password=" & _
strPassword & ";Data Source=" & strDataBaseName

' SQLステートメントを指定してレコードセットを作成する
rec.Open "select lob_no from lob", cnn, _
adOpenKeyset, adLockOptimistic

If Not rec.EOF Then
Text1.Text = rec.Fields(0)
End If

End Sub

Private Sub Form_Unload(Cancel As Integer)

cnn.Close
Set cnn = Nothing

End Sub

********************************

上記コーディングでは、「' SQLステートメントを指定してレコードセットを作成する」
のところで、lob表のlob_no列をSelectし、Text1.Textに表示することで、
Oracleへの接続が正常だということを試しています。

この部分をBLOB型をSelectして、それをVBの画面で表示させるには
どのようにすればよいのでしょうか?

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

No.3683 RE:"58" ランタイムエラ処理方法(訂正)  投稿者:Lantern [02/1/20(日)18:17分]

ミスった。訂正
'ファイル名の変換処理
If Dir$(strFolder(i) & "A" & Right$(strTmpFile, Len(strTmpFile) - 1)) <> vbNullString Then
    Select Case MsgBox("同名ファイルが存在します", vbYesNoCancel + vbCritical, "警告")
        Case vbOK
            '[はい]の処理
            Name strFolder(i) & strTmpFile As strFolder(i) & "A" & Right$(strTmpFile, Len(strTmpFile) - 1)
        Case vbNo
            '[いいえ]の処理
        Case vbCancel
            '[キャンセル]の処理
    End Select
Else
    Name strFolder(i) & strTmpFile As strFolder(i) & "A" & Right$(strTmpFile, Len(strTmpFile) - 1)
End If

No.3682 RE:"58" ランタイムエラ処理方法について  投稿者:Lantern [02/1/20(日)18:12分]

Private Sub sFileSearch()


Dim i As Long
Dim Dataline As String
Dim Lf As String
Dim LineNum As Integer
Dim filenum
Dim buffer As String

'ファイル操作時はERROR処理を入れる方が良いです
On Error GoTo ERR_EXIT

For i = 1& To lngFolderMax
'ファイル名の取得
strTmpFile = Dir$(strFolder(i) & SearchFileName, vbDirectory Or vbHidden Or vbSystem)

'親ディレクトリとカレントディレクトリの処理
While strTmpFile = "." Or strTmpFile = ".."
strTmpFile = Dir$
Wend

'順次ファイルの2行目を変換・リネームする処理
While strTmpFile <> ""
Lf = Chr(13) + Chr(10)
filenum = FreeFile()
buffer = vbNullString

'2行目の変換処理
Open strFolder(i) & strTmpFile For Input As #filenum
'行数カウンター初期化
LineNum = 0

Do While Not EOF(filenum)
LineNum = LineNum + 1
Dataline = vbNullString
Line Input #filenum, Dataline
If LineNum = 2 Then
Mid(Dataline, 2, 1) = combo1
Dataline = LTrim(Dataline)
buffer = buffer + Dataline + Lf
Exit Do
Else
buffer = buffer + Dataline + Lf
End If
Loop
Close #filenum

Open strFolder(i) & strTmpFile For Output As #filenum
Print #filenum, buffer
Close #filenum

'ファイル名の変換処理
Select Case MsgBox("同名ファイルが存在します", vbYesNoCancel + vbCritical, "警告")
Case vbOK
'[はい]の処理
Name strFolder(i) & strTmpFile As strFolder(i) & "A" & _ Right$(strTmpFile, Len(strTmpFile) - 1)
Case vbNo
'[いいえ]の処理
Case vbCancel
'[キャンセル]の処理
End Select

lngFileMax = lngFileMax + 1&
If opButanNo = 0& And lngFileMax < 32000& Then
If lngFileMax < 20& Then
File1.Visible = True
DoEvents
ElseIf opButanNo = 0& And lngFileMax = 21& Then
Animation1.Play
Animation1.Visible = True
File1.Visible = False
End If
List1.AddItem strFolder(i) & strTmpFile
End If

'次のファイル名取得
strTmpFile = Dir$
Wend

'ABORTの確認
If sCancel Then Exit Sub
DoEvents

Next i&
Exit Sub

ERR_EXIT:
Close

End Sub

MsgBoxのボタンについてはヘルプ参照して下さい。

No.3681 "58" ランタイムエラ処理方法について  投稿者:初心者 [02/1/20(日)16:45分]

NAO★さん、  

本当にありがとうございました。
もう一息お願いします。

同じファイル名が存在すると、 "58" ランタイムエラ-がでますが
この場合に処理について再質問させていただきたいと思います。
いろんな方法があるかと思うのですが。

Name strFolder(i) & strTmpFile As strFolder(i) & "先頭文字" & _ right$(strTmpFile,len(strTmpFile)-1)

上記のサンプルコードを実行するとき同じファイル名が存在すると [はい]、[無視]、[いいえ]、および[キャンセル]
の警告メッセージボックスを表示されるようにするにはどうすれば良いかです。 
本当に困っています。教えてください。お願いします。

No.3680 RE:PictureBoxへの文字列表示について  投稿者:ふく [02/1/20(日)13:17分]

ありがとうございました.

掲示板には一度目を通したのですが,もう一回ちゃんと見てから,具体的なこと
をお聞きしたいと思います.質問考えてきます.

No.3679 RE:PictureBoxへの文字列表示について  投稿者:花ちゃん [02/1/20(日)10:49分]

左のフレームの 画面・文字等の表示 や 文字列処理関係を一度ご覧になって下さい。

(自作関数の Locate 関数等は結構便利かと思います。)

それから、解らない処があれば、その辺に的を絞って、質問して下さい。

No.3678 PictureBoxへの文字列表示について  投稿者:ふく [02/1/19(土)23:48分]

私は現在VBで簡単なドローソフトを作っているのですが、文字の表示が難しくて困

っています。質問に対して何か良い方法をご存知なら教えてください。
[質問]
TextBoxに入力された複数行にわたる文字列をPictureBoxの任意の座標にうまく表
示させるには、どのようにしたらいいのでしょうか?
1行だけなら、CurrentX,CurrentY,Printメソッドで簡単に表示できるのですが、
行が複数になった場合、どうしても上手くいきません。

よろしくお願いします。

No.3677 RE:ファイル名変更まだまだ問題はあります。  投稿者:Lantern [02/1/19(土)18:49分]

←左のファイル操作関係にありますよ。

ファイル名変換前に、同名ファイルの有無を確認すればよいと思います。

No.3676 ファイル名変更まだまだ問題はあります。  投稿者:初心者 [02/1/19(土)16:23分]

 NAO★さん、  

本当にありがとうございました。
難しく思っていたのですが、 "Linenum = 0" 追加してかんたんに解決できたのですが、

まだまだ問題はあります。
つまり 同じファイル名が存在すると、 "58" ランタイムエラ-がでますが
この場合に処理がうまくいきません。
>ファイル名が存在する事とを表示されるようにするには どうすれば良いか 
教えてください

No.3675 MSFlexGridで罫線  投稿者:じろう [02/1/19(土)15:09分]

はじめまして,じろうと申します。

MSFlexGridでわからないことがあるので,
質問させてください。

MSFlexGridでExcelのような表を作成しています。
その際,行・列単位で罫線を引きたいまたは
線の幅を広くしたいと思っています。
MSDNのヘルプやこのHPの逆引きヘルプ一覧,過去ログ等で
調べたのですが,どのようにすればいいのか
わかりません。MSFlexGridでは対応できないのでしょうか?
ぜひ教えて下さい。

No.3674 RE:DBListコントロールについて  投稿者:ちょめ [02/1/19(土)13:29分]

DB更新後に


DBList1.SelectedItem = DB.Recordset.Bookmark

を加えてみたのですが、
実行時エラー'424': オブジェクトが必要です。
と表示されます(T-T
なにか注意点とかあったら教えてください。

ちなみにCommandボタンのClickイベント内での処理です。

No.3673 RE:DBListコントロールについて  投稿者:NAO★ [02/1/19(土)12:56分]

DBListコントロールのSelectedItem プロパティを使用してみてください。

No.3672 re:ファイル名変更について再再質問   投稿者:NAO★ [02/1/19(土)12:50分]

ここまで来ればもう一息です。デバッグは自分でしましょう。

ブレークポイントを設定して1行づつ実行すれば
どういう流れでプログラムが実行されているか見えるはずです。

No.3671 re:ファイル名変更について再再質問  投稿者:初心者 [02/1/19(土)11:38分]

 NAO★さん、  

適切なアドバイスを いただき本当にありがとうございました。

下記のサンプルコード通り実行すると "複数のファイル名を換える事は" 無事にできましたが。
ファイルを読み込み、2行目を、Combo1.Textの値に置き換える事は、" 最初の1ファイル済みであります "
原因は未だにわかっていませんが、書き込み "Loop"が一度済みであるような気がします。
問題を探し出し、コードを書き換えて下さい。
お手柔らかお願いします。

<実行のサンプルコードは>
Loop
Close #filenum
Open strFolder(i) & strTmpFile For Output As #filenum
Print #filenum, buffer
Close #filenum&
' "先頭につける文字 A "
Name strFolder(i) & strTmpFile As strFolder(i) & "A" & Right$(strTmpFile, Len(strTmpFile) - 1)

lngFileMax = lngFileMax + 1&
If opButanNo = 0& And lngFileMax < 32000& Then
If lngFileMax < 20& Then
File1.Visible = True
DoEvents
ElseIf opButanNo = 0& And lngFileMax = 21& Then
Animation1.Play
Animation1.Visible = True
File1.Visible = False
End If
List1.AddItem strFolder(i) & strTmpFile
End If
strTmpFile = Dir$

Wend
If sCancel Then Exit Sub
DoEvents
Next i
End Sub

No.3670 DBListコントロールについて  投稿者:ちょめ [02/1/19(土)9:13分]

DBListコントロール(以下DBList)を追加して、それに

DATAコントロール(以下DB)を関連付けます。

そこで、DBListを使ってレコードを選択し、
(DBListの選択項目が青くなる)
その後、レコードデータ修正に関する処理で、修正完了時に

'現在のカレントレコード位置記憶
Pos = DB.Recordset.AbsolutePosition
'DBの更新
DB.Refresh
'更新前のカレントレコードに移動
DB.Recordset.AbsolutePosition = Pos

という処理を行っているのですが、そのときDBListでの
選択項目が未選択状態になってしまいます(青背景が消える)
DB更新前のDBのカレントレコードをDBList内でも選択状態に
維持しておくことは可能でしょうか?

No.3669 re:ファイル名変更について再再質問  投稿者:NAO★ [02/1/19(土)2:19分]

Name strFolder(i) & strTmpFile As strFolder(i) & "先頭につける文字" & _
                                         right$(strTmpFile,len(strTmpFile)-1) 


No.3668 ファイル名変更について再再質問  投稿者:初心者 [02/1/18(金)23:30分]

ファイル名変更について再再質問させていただきたいと思います。

本当に困っています。教えてください。お願いします。
<サンプルコード>
Private Sub sFileSearch()
Dim i As Long
Dim Dataline As String
Dim Lf As String
Dim LineNum As Integer
Dim filenum
Dim buffer As String

For i = 1& To lngFolderMax
strTmpFile = Dir$(strFolder(i) & SearchFileName, vbDirectory Or vbHidden Or vbSystem)
While strTmpFile = "." Or strTmpFile = ".."
strTmpFile = Dir$
Wend
While strTmpFile <> ""
Lf = Chr(13) + Chr(10)
filenum = FreeFile
buffer = ""
Open strFolder(i) & strTmpFile For Input As #filenum
Do While Not EOF(filenum)
LineNum = LineNum + 1
Dataline = ""
Line Input #filenum, Dataline
If LineNum = 2 Then
Mid(Dataline, 2, 1) = combo1
Dataline = LTrim(Dataline)
buffer = buffer + Dataline + Lf
Else
buffer = buffer + Dataline + Lf
End If
Loop
Close #filenum
Open strFolder(i) & strTmpFile For Output As #filenum
Print #filenum, buffer
Close #filenum

<上記のサンプルコードは>
1.配列strFolder()には既にフォルダー名を取得済みである。
2.そこには複数のファイルが入っている。
3.検索での正規表現に一致するものを探し出し、そのファイルを読み込む
4.2行目を、Combo1.Textの値に置き換え閉じるまでです

その後、書き込み完了後に閉じたそのファイル名の先頭1文字だけを変えたい。
    つまりファイルは一つだけ

VBをはじめて間もない初心者なので、むずかしいんです・・・。
もし宜しければ ここにサンプルコードを書いて下さい。
お手柔らかお願いします



No.3667 RE:終了時にフリーズ  投稿者:Lantern [02/1/18(金)16:33分]

プログラムの具体的な処理内容が書かれていないので、

みなさんアドバイスできないと思いますよ。
開発環境等も書かれると良いと思います。

”他のプログラムにフォーカスが移る”から思うのは
SHELL関数を使用していますか?

”フリーズしたようになる”ようですが、
配列確保などで、大量のメモリを使用していないですか?

終了する過程をデバッグモードで1行づつ(F8)
追ってみてください。

No.3666 RE:Callについて(追加質問)  投稿者:匿名 [02/1/18(金)15:09分]

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


参考させていただきます。

No.3665 RE:Callについて(追加質問)  投稿者:Lantern [02/1/18(金)14:58分]

Sub Shell_A (ByRef a As Long, ByRef b As Long)


a = 300
b = 400

End Sub

'呼び出し
Sub Call_Shell_A()

Dim aa As Long
Dim bb As Long

Call Shell_A(aa, bb)

Debug.Print aa 'ASSERT >> 300
Debug.Print bb 'ASSERT >> 400

End Sub

参考にして下さい。

No.3664 RE:ネット内のPCのファイル名を取得する方法  投稿者:初心者 [02/1/18(金)14:09分]

よねKENさま、ありがとうございました。


一度はやったのですが「エラー」になり、質問させていただきました。
今やってみたらうまくいきました。タイvミスだったのでしょう。
一方で、「ネットワークドライブの割り当て」をし、(Drive)
Dir関数で取得する方法を見つけました。コードが長くなります
(-_-;;;)
質問する時は慎重に、、、反省しました。ありがとうございました。

No.3663 Re:SJISの文字の変換方法  投稿者:NAO★ [02/1/18(金)13:09分]

>Asc関数でできます。


文字列ならStrConv関数の方がいいかも

No.3662 Callについて(追加質問)  投稿者:匿名 [02/1/18(金)12:59分]

たびたびすいません。また疑問が出てきたので、

質問させてください。

もし変数が、a = 200 b = 300と複数の場合は、
宣言側と呼び出し側はどういうプログラムを作成
すればいいのでしょうか?

教えてください。よろしくお願いします。

No.3661 終了時にフリーズ  投稿者:KAGE [02/1/18(金)11:15分]

VBを始めて半年くらいの初心者です。


プログラムを終了させると画面は閉じるのですがデスクトップ全体がフリーズ
したような状態になり何もクリックできなくなります。(マウスは動きます)
しかたなく Alt+CTRL+DEL を押すと終了させたプログラムが「応答なし」で
残っていて、それを強制終了させるとフリーズが解消されます。

しかし、このプログラムを終了させる時に他に何か別のウィンドウ(エクス
プローラーでも何でもいいです)が立ち上がっていれば終了にフリーズしま
せん。プログラムのショートカットをデスクトップ上に置いて起動させてい
るのですが、終了させるとフォーカスが起動させたショートカットではなく
立ち上がっている別のウィンドウにフォーカスが移っています。

プログラムを終了させる時に別のウィンドウがないとフリーズし、別のウィ
ンドウがあるとフリーズしない(ただしフォーカスは別のウィンドウに移る)
といった現象なのですが原因がよくわからず悩んでいます。

何か御判りになる方がいましたらアドバイスお願いします。



No.3660 ありがとうございました。  投稿者:匿名 [02/1/18(金)11:02分]

よねKENさんありがとうございました。


プログラムを参考に作成してみます。

本当にありがとうございました。


No.3659 Re:質問っす  投稿者:ちょめ [02/1/18(金)11:02分]

すいません、演算子であったんですね、お騒がせしました。

さすがVB、意表を突いてくる・・・(笑)

No.3658 質問っす  投稿者:ちょめ [02/1/18(金)10:59分]

VBにはxのy乗を返す関数は存在しないのですか?

ヘルプを見ても見つからなかったのですが・・・
自分で作るしかないのでしょうか?

No.3657 終了時にフリーズ  投稿者:KAGE [02/1/18(金)10:48分]

VBを始めて半年くらいの初心者です。


プログラムを終了させると画面は閉じるのですがデスクトップ全体がフリーズ
したような状態になり何もクリックできなくなります。(マウスは動きます)
しかたなく Alt+CTRL+DEL を押すと終了させたプログラムが「応答なし」で
残っていて、それを強制終了させるとフリーズが解消されます。

しかし、このプログラムを終了させる時に他に何か別のウィンドウ(エクス
プローラーでも何でもいいです)が立ち上がっていれば終了にフリーズしま
せん。プログラムのショートカットをデスクトップ上に置いて起動させてい
るのですが、終了させるとフォーカスが起動させたショートカットではなく
立ち上がっている別のウィンドウにフォーカスが移っています。

プログラムを終了させる時に別のウィンドウがないとフリーズし、別のウィ
ンドウがあるとフリーズしない(ただしフォーカスは別のウィンドウに移る)
といった現象なのですが原因がよくわからず悩んでいます。

何か御判りになる方がいましたらアドバイスお願いします。



No.3656 Re:Callについて  投稿者:よねKEN [02/1/18(金)10:47分]

>Call Sell_A

>
>Public Sub Sell_A()
> i = 0
>End Sub
>
>上記のプログラムでSell_Aの中の処理が終わった後に、
>Sell_Aの中のiの値を使用したいのですが、

そういうときは、SubプロシージャではなくFunctionプロシージャにしましょう。

'Functionプロシージャの宣言側
Public Function Sell_A() As Long
Dim i As Long

i = 120
Sell_A = i ' 戻り値としてiを返す
End Function

'呼び出し側
Dim ret As Long

ret = Sell_A()
Debug.Print ret ' 120が表示される。

#今回の例の場合は、Functionプロシージャにして戻り値を返すという方法を取りましたが、
#ByRefによる参照渡しを使う方法、グローバル変数を使う方法(なるべく使わない方がよい)などあります。

No.3655 Re:ネット内のPCのファイル名を取得する方法  投稿者:よねKEN [02/1/18(金)10:41分]

「\\マシン名\共有名\」で特定マシンの特定フォルダーの指定になります。

後は、Dir関数でもFSOでも使えます。

No.3654 Re:SJISの文字の変換方法  投稿者:よねKEN [02/1/18(金)10:35分]

Asc関数でできます。

No.3653 Callについて  投稿者:匿名 [02/1/18(金)10:29分]


いつもお世話になっております。

早速ですが質問させてください。

Call Sell_A

Public Sub Sell_A()
i = 0
End Sub

上記のプログラムでSell_Aの中の処理が終わった後に、
Sell_Aの中のiの値を使用したいのですが、どういった
プログラムを作成すればいいか分かりません。

初歩的な質問で申し訳ありませんが、
どなたか教えてください。お願いします。

No.3652 RE:コントロール配列のindexの変更  投稿者:kiiya [02/1/17(木)22:20分]

エディターでTABINDEX→TAG→INDEXは参考になりました。ありがとうございました。

No.3651 SJISの文字の変換方法  投稿者:信 [02/1/17(木)20:10分]

VBで画面から入力した漢字文字をSJISコードに変換の仕方を

教えて下さい。よろしくお願い致します。

前のログ 次のログ


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