エクセル上でテキストボックスを作成し、書式設定のサイズで設定し、印刷をしても、そのサイズどおりには出力できないのはなぜですか?
もともと表計算ソフトにそんなことを求められないのでしょうか?ワードを使おうということなのでしょうか?教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

精度が不明ですが(mm単位だと単なるずれかも)


かなり違う場合は以下のような場合も。

印刷のときの倍率が100%以外の数字になっていませんか?
もしくはシートのページ設定のときに「拡大/縮小印刷」の項目で
縦○ページ×横○ページに印刷にチェックを入れてませんか?

そんなことくらい分かってる!といわれそうなのですが、
一応ご確認ください。
    • good
    • 0

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q【エクセル】テキストボックスのサイズを他のテキストボックスにもコピーできますか?

こんにちは、みなさん!!

AとういうテキストボックスのサイズをBとういう
テキストボックスのサイズにコピーできますか?

例えば、テキストボックスAの幅が3高さが1だとします。
テキストボックスBのサイズをAと同じにするには、書式
設定から、高さ幅3高さ1と入力して同じサイズのテキスト
ボックスにします。

これを、もう少し簡単にできる方法はありませんか?

ご存知の方いらっしゃいましたらよろしくお願いします。

Aベストアンサー

すでにあるテキストボックスなら、
Shiftを押しながら選択すると、
A、Bのテキストボックスを同時に選択することができます。
複数同時に選択したところで、書式設定すればいいと思います。

Qユーザーフォーム内のテキストボックス内の書式設定

A1セルに12.345と入力してあり、書式は「数値」で小数点以下の桁数2にしてあり、
「12.35」と表示されます。

VBAを起動して、ユーザーフォームを挿入し、
テキストボックスを作成し、
TextBox1の「ControlSource」にA1と入力すると
TextBox1には「12.345」と表示されます。

エクセルのA1と同じ様に
TextBox1も「12.35」と表示したいのですがどうすればいいのでしょうか?

エクセル2003です。
よろしくお願い致します。

Aベストアンサー

こんばんは。

>TextBox1の「ControlSource」にA1と入力すると

としたら、セルと連動するのですから、セルを合わせるか、テキストボックスを合わせるかしても、結果的に同じ値になるのですから、TextBox1 とA1 を、そのままつなげることはできません。

テキストボックスのダミーを設けます。(ここでは、TextBox2 とします)
そして、そちらに、ControlSource = A1 と置き、プロパティの Visible =False にします。

'ユーザーフォームモジュール

Private Sub TextBox2_Change()
 Dim buf As Variant
 buf = ActiveSheet.Range("A1").Text
 If IsNumeric(buf) Then
   TextBox1.Text = Format(buf, "#,##0.00")
 End If
End Sub

Private Sub UserForm_Initialize()
  TextBox1.Text = ActiveSheet.Range("A1").Text
End Sub

なお、テキストボックスの表示の基本は、Text ですから、表示は、あくまでも、文字列です。ですから、そこに書式自体は、イタリックや太字などの文字列書式しか存在していません。

こんばんは。

>TextBox1の「ControlSource」にA1と入力すると

としたら、セルと連動するのですから、セルを合わせるか、テキストボックスを合わせるかしても、結果的に同じ値になるのですから、TextBox1 とA1 を、そのままつなげることはできません。

テキストボックスのダミーを設けます。(ここでは、TextBox2 とします)
そして、そちらに、ControlSource = A1 と置き、プロパティの Visible =False にします。

'ユーザーフォームモジュール

Private Sub TextBox2_Change()
 Dim buf As Var...続きを読む

Qエクセル2003のテキストボックスの書式設定について

エクセル2003でテキストボックスを使っていますが、フォントやサイズを固定(MS明朝、11とか)したいのですが、うまくいきません。テキストボックスでMS明朝、11に書式設定後に、新しいテキストボックスを作るとMSゴシック、9になってしまいます。
どうしてなんでしょう?
宜しくお願いします。

Aベストアンサー

Excelで入力されるフォントは「ツール」→「オプション」→「全般」タブの「標準フォント」で既定されています。

ここの欄で、ご希望のフォント、フォントサイズを指定してみて下さい。

なお、テキストボックスのフォントだけを変更したいのであれば、ANo.1の方の方法がベターと思います。

Q「ユーザーフォーム」のサイズ変更と「テキストボックス」の条件設定について

エクセル2000で、あるマクロを作成中です。
これに関して、2点アドバイスを頂きたくお願い致します。

【 1 】
完成した後に使用するPCのモニターが、15インチと17インチが混在する環境となります。
ユーザーフォームの寸法を15インチモニターに合わせて設定すると、17インチモニター使用時はフルスクリーンになりません。
これをモニターのサイズに合わせて、自動で変化させることは可能なんでしょうか?
もし可能であれば、その方法はどうすればいいのでしょうか?

【 2 】
コンボボックスで選択項目を表示させるのですが、「その他」を選んだ場合のみ、入力可能なテキストボックスを作りたいのです。
その他以外を選択した場合は、
1. テキストボックスそのものを非表示にする。
2. テキストボックスのバックカラーを「白」から「グレー」に変化させ、それまで入力可能だったものを入力不可にする。
また、タブも停止から非停止にしたいと考えています。
上記1、2はどちらでも構いません。

この2点について、どなたか詳しい方からご教示頂きたくお願い致します。

エクセル2000で、あるマクロを作成中です。
これに関して、2点アドバイスを頂きたくお願い致します。

【 1 】
完成した後に使用するPCのモニターが、15インチと17インチが混在する環境となります。
ユーザーフォームの寸法を15インチモニターに合わせて設定すると、17インチモニター使用時はフルスクリーンになりません。
これをモニターのサイズに合わせて、自動で変化させることは可能なんでしょうか?
もし可能であれば、その方法はどうすればいいのでしょうか?

【 2 】
コンボボックスで選択...続きを読む

Aベストアンサー

【 1 】について
ユーザーフォームの画面表示サイズは
モニターのインチ数というよりは、
画面の解像度によって決まるのでは
ないでしょうか。
画面の解像度は以下のようにして取得可能です。

Private Declare Function GetSystemMetrics _
Lib "user32" (ByVal nIndex As Long) As Long
Sub Kaizoudo()
Dim X As Long, Y As Long
Dim nGA As String
X = GetSystemMetrics(0) '画面の幅を取得
Y = GetSystemMetrics(1) '画面の高さを取得
MsgBox "幅" & X & "×" & "高さ" & Y
End Sub

上記で取得した画面の解像度に応じて、
ユーザーフォームの大きさを変化させれば、
よいかと思います。
その場合、配置しているコントロールの位置も
フォームの大きさに合わせて変える必要があります。

【 2 】について
>1. テキストボックスそのものを非表示にする。

テキストボックスのVisible プロパティをFalseに設定する。

Private Sub ComboBox1_Change()
If Me.ComboBox1.Text = "その他" Then
Me.TextBox1.Visible = False
Else
Me.TextBox1.Visible = True
End If
End Sub

>2. テキストボックスのバックカラーを「白」から「グレー」に変化させ、
それまで入力可能だったものを入力不可にする。

BackColor プロパティをグレイに設定し、
Enabled プロパティをFalseに設定すれば良いかと思います。

Private Sub ComboBox1_Change()
If Me.ComboBox1.Text = "その他" Then
Me.TextBox1.Enabled = False
Me.TextBox1.BackColor = vbGrayText
Else
Me.TextBox1.Enabled = True
Me.TextBox1.BackColor = vbWindowBackground
End If
End Sub

【 1 】について
ユーザーフォームの画面表示サイズは
モニターのインチ数というよりは、
画面の解像度によって決まるのでは
ないでしょうか。
画面の解像度は以下のようにして取得可能です。

Private Declare Function GetSystemMetrics _
Lib "user32" (ByVal nIndex As Long) As Long
Sub Kaizoudo()
Dim X As Long, Y As Long
Dim nGA As String
X = GetSystemMetrics(0) '画面の幅を取得
Y = GetSystemMetrics(1) '画面の高さを取得
MsgBox "幅" & X & "×" & "高さ" & Y...続きを読む

Qセルの書式設定のフォントやサイズの設定はできないの

エクセルの条件付き書式ではセルの書式設定のフォントやサイズの設定はできないのですか?

条件:セルの値が
次の値に等しい:a

として、書式ボタンをクリックしたのですが
色やスタイルや下線は設定できますがフォントやサイズの設定はできません。
仕様でしょうか?
条件が悪いのでしょうか?

Aベストアンサー

こんばんは!
確かに条件付書式ではフォント名・フォントサイズの変更はダメみたいですね!

どうしても!というコトであればVBAで可能です。

仮にA列を質問のような表示にしたい場合の一例です。

画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に
↓のコードをコピー&ペーストして、A列にデータ入力してみてください。

Private Sub Worksheet_Change(ByVal Target As Range) 'この行から
If Intersect(Target, Columns(1)) Is Nothing Or Selection.Count <> 1 Then Exit Sub
If Target = "a" Then
With Target.Font
.Name = "MS P明朝" '←好みのフォント名に
.Size = 18 '←16Ptとしています
End With
Else
With Target.Font
.Name = "MS Pゴシック" '←他のセルの同じフォント名に!
.Size = 11 '←他のセルと同じフォントサイズに!
End With
End If
End Sub 'この行まで

※ フォント名・フォントサイズのみの設定としています。
※ フォントスタイルは条件付書式で設定可能のようですので、コード内に入れていません。

参考になりますかね?m(_ _)m

こんばんは!
確かに条件付書式ではフォント名・フォントサイズの変更はダメみたいですね!

どうしても!というコトであればVBAで可能です。

仮にA列を質問のような表示にしたい場合の一例です。

画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に
↓のコードをコピー&ペーストして、A列にデータ入力してみてください。

Private Sub Worksheet_Change(ByVal Target As Range) 'この行から
If Intersect(Target, Columns(1)) Is Nothing Or Selection.Count <> 1 Then Exit S...続きを読む


このカテゴリの人気Q&Aランキング

おすすめ情報