[[20070618144744]] 『MsgBoxの表示文字数を増やしたい』(百十) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『MsgBoxの表示文字数を増やしたい』(百十)
 いつも大変参考になる情報を拝見させて頂いております。
 今回お尋ねしたい事は、「MsgBox」についてなのですが、ヘルプによると1バイト文字で約千文字
程度しか表示されないとの事が書かれていました。

 ところが、リストのファイルをコピーするマクロで、コピー元が存在しなかった時は「以下のファイルはありませんでした」
というタイトルで、対象のファイル名を表示していたのですが、対象が多かった場合、ファイル名が途切れ、
以降のファイル名が表示されません。
 複数枚の「MsgBox」で分割表示したりすること無く、1枚のウインドゥで表示する方法はありませんでしょうか?
 もしくは、マクロ内からの操作で「MsgBox」に似た表示や動作をする別の方法が御座いましたら、それでも問題ありません。

 要約すると、1枚のダイアログボックスで大量の文字を表示。という事に成ります。
 何卒、宜しくお願いいたします。

 ユーザーフォームで作ってはいかがでしょう?
 (MARBIN)

(MARBIN)さん、回答ありがとう御座います。
ユーザーフォームは使い方がいまいちわからなかったので、
避けていたのですが・・・やっぱりわからないですね。

おそらくラベルとコマンドボタンだけで再現できるのだろうと思うのですが、
どうやってラベルに変数を渡せるのでしょうか?

「show」と「hide」でユーザーフォームを表示・非表示できるようになったのですが、
肝心のリスト表示を行う方法がわかりません。

「EList」という変数に改行コード等も含めて、表示内容が纏まったものを、
どのようにすればユーザーフォームに渡せるのでしょうか?

再度の質問で恐縮ですが、宜しくお願いいたします。
(百十)


 一例ですがSheet1のA1から30のリストをLabelに表示します。
      (弥太郎)
 '------------
 Private Sub UserForm_Initialize()
    With Sheets("sheet1")
        For i = 1 To 30
            Label1.Caption = Label1.Caption & vbLf & .Cells(i, 1)
        Next i
    End With
 End Sub


(弥太郎)さん、回答ありがとう御座います。
ですが、ちょっと意図したものとは違うようです。

作業はマクロ内のバックグラウンドのみで行いたいので、シートに一度書き込んで、
それをラベルに読み込ませる方法は、申し訳ないですが・・・・。

「sheet2」の中の、「ファイル出力_Click()」というモジュールから、
「EList」のString変数内容を、「UserForm1」の「Lavel1」に表示させる。
という動きを行いたいのです。

言葉足らずで、誤解を招いてしまった事を、お詫びいたします。
ですが、今一度、ご協力をお願いいたします。
(百十)


出来ました。
共通モジュールで「EList」をパブリック変数で宣言する事で、渡せました。
また、(弥太郎)さんが例として挙げたのは、ラベルへの設定方法だったのですね。
意図を読み取れなかったのは、こちらの方でした。申し訳ないです。

(MARBIN)さん、(弥太郎)さん、ありがとう御座いました。
(百十)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.