2024年のうちにやっておきたいこと、ここで宣言しませんか?

お世話になります。
マクロはまったくの素人で、「InputBox」を使ったマクロを教えて
いただいたのですが、InputBoxの大きさやInputBox内に表示する言葉
("〇〇〇・・")の〇〇〇の字の表示の大きさや色等は変えることが出来
るのでしょうか。
また〇〇の文書が長い時の、切りのよいところでの改行はどのようにすればよいのでしょうか。
いろいろお尋ねして申し訳ありませんが、ご教示ください。
よろしくお願いいたします。

A 回答 (4件)

こんにちは。



・文字の大きさ
・文字の色
・改行の挿入

そういう使い方は、InputBox ではなくて、UserForm のTextBox で使うのがよいです。

標準で、フォントサイズは、9 だと思いますが、それを大きくしてあげればよいし、色も指定できます。

>また〇〇の文書が長い時の、切りのよいところでの改行はどのようにすればよいのでしょうか。

Font クリックしてダイアログで設定

EnterKeybehavior |True
MultiLine    |True

------------------------------
「VBA」(Visual Basic for Application)で書かれたものを総称して、プロシージャと呼び、マクロとは厳密には意味が異なります。

マクロとは、Microsoft 社の定義では、「ひとつの作業(タスク)の自動実行を目的とする機能」のことです。引数を必要とするユーザー定義関数や、他の呼び出しのみで使うサブルーチンなどは、マクロ(Macro)とは呼ばないとしています。

原文:
#引数を持たないパブリックなSub プロシージャのことだけを指します。すべてのマクロはプロシージャですが、すべてのプロシージャがマクロであるとは限りません。(中略)アプリケーションの[マクロ]ダイアログボックスから実行できるプロシージャは、すべてマクロです。

これは、Microsoft のプログラマーズガイドに、その説明が出てきます。

そんなことは、一般の人にはどうでもよいことですが、一般的には、「マクロ」と呼んでいるようですし、また、プロシージャとは呼びにくい面があるからです。
    • good
    • 0
この回答へのお礼

いろいろとご指導ありがとうございました。
少し、勉強しさせていただきます。
今後も、よろしくお願いいたします。

お礼日時:2008/03/12 13:05

マクロという表現はやめて、エクセルVBAとかしたら。


既回答でのご指摘もある。
ーー
こんなのWEB照会すれば沢山記事があるのになぜしないのかな。
ーー
エクセルVBA程度内では
(1)x=MsbBox("入力値=")
http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/v …
http://www.moug.net/skillup/nksw/nksw06-01.htm
にも載っているか、
prompt,buttons,title,helpfile,context
指定できる引数は5つで、大きさや表示場所は指定させてくれない。
TitlでChr(10)を&で挟めば、改行できる。
(2)Application.InputBox
「Application.InputBox VBA」でGoogle照会すれば
InputBox(Prompt,[Title],[Default],[XPos],[YPos],[HelpFile],[Context])
など多数にあるように
InputBox(Prompt,[Title],[Default],[XPos],[YPos],[HelpFile],[Context])
とあるように、,[XPos],[YPos]が指定できる。
ーー
Pronnptメッセージのフォント、サイズ、カラー等はVBAレベルでは出来ない。APIではきっと指定があると思うが、余り当面凝らないこと。
(>はまったくの素人)。ほかに勉強することが沢山あるはず。
ポケットにしまって、学が進んで期が来たら考えること。
ーー
(3)手っ取り場約ではUserFormで代用できるでしょう。
こちらはラベルコントロールなどのフォント関係の指定もフォームの大きさ、表示位置も自由になる。
(単なるサンプル)えくせるVBAでテスト済み
Private Sub UserForm_Click()
Me.Label1.Font.Size = 25
Me.Top = 100
Me.Width = 50
End Sub
フォームという言葉も質問に出ない状態では、まだその期ではないのでは。
    • good
    • 0
この回答へのお礼

懇切丁寧なご指導ありがとうございます。
助かります。
今後もよろしくお願いいたします。

お礼日時:2008/03/12 13:11

えっとまず...



「マクロ」というのは、色々なソフトウェアの "自動化" 機能として利用される機能の総称のようなものです。
同じマクロという名称でも、それを利用するソフトウェアによってマクロの使い方も違えばプログラミング (ができるマクロなら) の言語や記述方法にも違いがあります。

マクロとは 【macro】 - 意味・解説 : IT用語辞典
http://e-words.jp/w/E3839EE382AFE383AD.html

というわけで、質問カテゴリが Office 系ソフトで単に「マクロ」というだけではどんなソフトで使うのかは判りません。
おそらく Windows をお使いで Microsoft Office 製品 (Word や Excel など) でのお話では...という事でその仮定でお話します。

Word や Excel の "マクロ" でではなく VBA (Visual Basic for Applications) での InputBox の書式と指定できる項目は下記のようになっています。

  InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context])

prompt : インプットボックスに表示するメッセージ。("入力してください" など)
title : インプットボックスのタイトルバーに表示する文字列を指定します。(指定しない場合、Excel なら "Microsoft Excel" と表示)
default : 入力エリアにあらかじめ表示する内容です。(指定しなければ空欄になります)
xpos, ypos : 画面の左端 (xpos)、上端 (ypos) からの距離です。
helpfile : 状況依存のヘルプを設定する場合、使用するヘルプファイルを指定します。
context : ヘルプトピックに指定したコンテキスト番号を指定します。

...というか、こうした解説は全部 VBA のヘルプに書いてあります。

InputBox では基本的に、これ以外の部分を変更する事はできません。
質問にあるような、文字の大きさや色などを指定する機能はありません。
シンプルに「入力を求める」ためのものなので、たいしてカスタマイズはできないんですね。

そういうビジュアル的な要素を盛り込んだモノをご所望の場合、ユーザーフォームで「自分で作る」事になります。

VBA基本(ユーザーフォームの作り方)
http://www.asahi-net.or.jp/~ef2o-inue/vba_k/sub0 …

トップページ:☆ Excelでお仕事!(Excel全般の解説サイト) ☆
http://www.asahi-net.or.jp/~ef2o-inue/top01.html

> マクロはまったくの素人で

どのくらいの「素人」なのかということもあります (自分も自称「素人」です) が...
マクロ (VBA) の基礎がわからないと、正直この先いろいろな壁に突き当たると思います。

もしお持ちでなければ、できればこの機会に市販の解説書を一冊買っておくことをお勧めします。
本屋さんで立ち読みしたり図書館などで読んでみたりして、ご自身で判りやすいと思うものを探してみてはどうでしょう。
    • good
    • 0
この回答へのお礼

懇切丁寧にいろいろご教示ありがとうございます。
参考になります、今後もよろしくお願いいたします。

お礼日時:2008/03/12 13:17

大きさを変えることはできません。


ユーザーフォームを使えばできるかも?(InputBoxの表示をユーザーフォームで作ってしまう)
改行は
InputBox("aaaaaa" & vbCrLf & "bbbbbb")
でOK
    • good
    • 0
この回答へのお礼

ありがとうございました。
改行は早速活用させていただきます。
こんごとも、よろしくお願いいたします。

お礼日時:2008/03/12 12:11

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

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


おすすめ情報

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