牛、豚、鶏、どれか一つ食べられなくなるとしたら?

EXCEL2000のVBAでコマンドボタンを使っていますが、ボタンの横サイズは大きくできないときに、ボタンの文字列(caption)が長いので表示が途中で切れてしまう。WordWrapをtrueにすると改行するが、任意の文字位置で改行できない。スペース文字を途中で挿入して改行位置を調整しようとしてもうまくいかない。任意の位置で改行する方法はありますか。

A 回答 (4件)

コマンドボタンのプロパティの『Caption』欄ではなく、コマンドボタン上での直接編集なら、


Shiftキー+Enterキーの同時押しで、任意の位置に改行を挿入できます。

具体的な手順を以下に説明します:
 1)『コントロール ツールボックス』ツールバーの左端にある『デザイン モード』ボタンを
  クリックして、デザインモードに切り替える
 2)改行を入れたいコマンドボタンを右クリック
 3)右クリックメニューから「コマンドボタン オブジェクト(O)→編集(E)」を選択
 4)コマンドボタン上にカーソルが表示されるので、改行させたい位置に移動
 5)Shiftキーを押しながらEnterキーを入力

・・・以上です。
    • good
    • 8
この回答へのお礼

ありがとうございました。解決しました。
captionのテキストボックスの中でゴチャゴチャ触っていたのが無理だったということのようです。頭を柔らかくしなければいけないな、と反省しきりです。

お礼日時:2008/06/21 19:36

既にいろいろやり方が出てますが、1つ追加を。


プロパティウインドウにて設定する場合、以下の方法で可能です。
1.メモ帳などのテキストエディタを開き、Captionに設定する文字列を
  改行付きで書く。
2.書いた改行付き文字列をコピーし、プロパティウインドウの
  Captionの欄に貼り付ける。
プロパティウインドウの内容自体は少し文字化けしてしまいますが、
ちゃんと改行されます。
    • good
    • 1
この回答へのお礼

解決しました。ありがとうございました。
EXCEL2000とEXCEL2006で予定の文字列は全角・半角文字ともに問題なく改行できました。captionのテキストボックスの中で文字コードを触ってたりして試行錯誤していましたが、発想の転換というか、意外な方法が有効とは・・・気づきませんでした。

お礼日時:2008/06/21 19:29

コードを書けばできます。

たとえば、

CommandButton1.Caption = "CommandButton" & vbCr & "123"

シートにボタンを貼って、
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
でコードたしたらうまくいきました。

あとは応用してみてください。
    • good
    • 2
この回答へのお礼

ありがとうございました。解決しました。
質問に正確に書かなかった私のミスですが、今回はデザインモードでボタンの配置などを行っていた時の行き詰まりでしたので、Shift+Enterで解決しました。教えていただいたコードは今後使わせていただきます。

お礼日時:2008/06/21 19:43

VBAでのコントロールなどのキャプション設定をする場合、


イベントプロシージャの「UserForm_Initialize」に下記の通り記述すれば実現できると思います。
以下のコードをフォームモジュールに記述してください。
''ここからコピー
Private Sub UserForm_Initialize()
Me.CommandButton1.Caption = "aaa" & vbCrLf & "bbb"
End Sub
''ここまでコピー

ちなみに「vbCrLf」は「改行」を意味しています。
    • good
    • 1
この回答へのお礼

ありがとうございました。解決しました。
私の質問が正確でなかったのですが、今回はデザインモードでいくつかのボタンのイメージを確認しながらcaptionを改行させたかったので、Shift+Enterで解決しました。教えていただいたコードは別の機会に使わせていただきます。

お礼日時:2008/06/21 19:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A