質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.40%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Q&A

解決済

1回答

327閲覧

vbaのユーザーフォームにて、データの一覧表示の際、改行を含むデータを改行された状態で表示させたい。

MASUFISH

総合スコア22

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

1グッド

1クリップ

投稿2024/07/10 08:56

実現したいこと

vbaのユーザーフォーム上にデータを一覧表示する際に、改行を含む文字列のデータを改行された状態で表示させたい。

vbaのユーザーフォーム上にデータをグリッド形式で、一覧表示させるのに、現状リストボックス(かリストビュー)コントロールを用いているのですが、表示させるデータに改行が含まれていた場合、1行で表示されてしまいます。
例)
「aaa
bbb
ccc」
というデータがあった場合「aaabbbccc」という風に表示されてしまう。

過去に同様な質問があり、対応方法があったので、参考にしましたが、改行のたびに、次の行にデータが表示されてしまいます。
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q14185677849

イメージ説明

理想としては、行の高さが自動調整され、一つのセル?内に収めたいです。
リストビューやリストボックスでは、それが仕様なのでしょうが、他の方法や、解決方法等ありましたら、ご教示願います。
※バージョンが異なるので、DataGridViewは扱えません。

tatsu99👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mattuwan

2024/07/11 01:14

ユーザーフォームは何年も仕様が変わってないので、ユーザーフォームにこだわる必要がないのでは? エクセルのシートをユーザーフォームのように使うのもありかなぁ。。。。と、、、 エクセルのシートは非常に高機能なので、、、、 素人の意見ですが参考まで。
MASUFISH

2024/07/11 08:51

それもあるのですが、他の機能をユーザーフォームで作っていて、一貫させたいという思いがありまして。 それと意外と気になっている方も多いのではないかという趣旨もあり質問させていただいています。
guest

回答1

0

ベストアンサー

リストボックスには複数行を表示するという機能がなさそうです。
テキストボックスにはあるので、無理やりたくさん配置し、
リストボックスっぽく見せるとか???

ExcelVBA

1Private Sub UserForm_Initialize() 2 Dim v 3 4 v = Split(Range("A1").Value, vbLf) 5 v = Join(v, vbCrLf) 6 7 Me.ListBox1.AddItem v 8 9 With Me.TextBox1 10 .MultiLine = True 11 '.WordWrap = True 12 '.Text = v 13 .Text = Range("A1").Value 14 End With 15 16 Me.ListBox1.AddItem Me.TextBox1.Text 17End Sub

投稿2024/07/12 00:20

mattuwan

総合スコア2143

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

MASUFISH

2024/07/14 01:53

回答ありがとうございます。 やはりそうですよね。 テキストボックスをたくさん配置させ一覧表示させるのは、考えてはみたのですが、できれば改行があった場合、スクロールなしで全文表示されるように、その行分だけボックスの高さを変化させ、なおかつ隣接するテキストボックス同士で高さを合わせるようにしたかったのですが、それは難しいかなと思い断念してしまいました。 恐らく、おっしゃるやり方にして、文字や改行が多いときは、スクロール表示させるのが良さそうではありますが、上記を参考に、もう少し、考えてみます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.40%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問