![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.3ベストアンサー
- 回答日時:
No.2です。
>マクロの中で、計算しその結果に対して表示を変えたいのですが
の件について・・・
当然コード内にワークシート関数を記載すれば可能ですが、
セル内のフォントを部分的に変えたい場合、生データにし、なおかつ「文字列」にする必要があります。
計算結果を「値」として表示させれば可能になります。
ただし、数式そのものが消えてしまいますので、一度きりの操作になってしまいますよね?
前回のコードそのものが1セルだけのChangeイベントです。
おそらく数式を入れる場合複数セルに入れる場合が多いと思います。
すなわち前回のコードでは不向きだと思います。
別案として、一旦数式によって計算結果を表示させ
ご自身で操作したいセルを範囲指定 → マクロ実行 といった流れの方が理に適っていると思います。
そこで今回は一旦数式によって表示されている計算結果の小数点以下の数値を操作するコードにしてみました。
前回同様シートモジュールに↓のコードをコピー&ペースト → Excel画面に戻り
文字操作をしたいセルを必ず範囲指定した後(←重要)にマクロを実行してみてください。
(Alt+F8キー → マクロ → マクロ実行です)
※ 前回は文字列にも対応できるようにしていましたが、今回は計算結果は数値だという前提です。
Sub Sample1() 'この行から
Dim k As Long, str As String, c As Range
For Each c In Selection
str = c.Value
If InStr(str, ".") > 0 Then
Application.EnableEvents = False
k = InStr(str, ".") + 1
c.NumberFormatLocal = "@"
c.HorizontalAlignment = xlRight
c = str
With c.Characters(Start:=k, Length:=Len(c)).Font
.Size = 9
.ColorIndex = 3
End With
Application.EnableEvents = True
End If
Next c
End Sub 'この行まで
※ 一旦マクロを実行した後、範囲指定したセルの表示形式が「文字列」になっていて
右寄せになっているので注意してください。m(_ _)m
No.2
- 回答日時:
こんにちは!
VBAになってしまいますが、一例です。
>一つのセル内に少数点以下を表示させた時・・・
とありますが、数式によって表示されたデータでは変化しません。
あくまでご自身で手入力するとします。
A列限定としてみました。
画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面のカーソルが点滅しているところに
↓のコードをコピー&ペースト → Excel画面に戻り、A列にデータを入力してみてください。
Private Sub Worksheet_Change(ByVal Target As Range) 'この行から
Dim k As Long, str As String
If Intersect(Target, Range("A:A")) Is Nothing Or Target.Count > 1 Then Exit Sub
With Target
.NumberFormatLocal = "G/標準"
.HorizontalAlignment = xlLeft
If IsNumeric(.Value) Then
.HorizontalAlignment = xlRight
str = .Value
If InStr(str, ".") > 0 Then
Application.EnableEvents = False
.NumberFormatLocal = "@"
k = InStr(str, ".") + 1
.Value = str
With .Characters(Start:=k, Length:=Len(.Value)).Font
.Size = 9 '←サイズは好みで!
.ColorIndex = 3 '←赤
End With
Application.EnableEvents = True
End If
End If
End With
End Sub 'この行まで
※ フォントサイズ・フォント色は好みで変えてください。
※ セル左上に「エラーチェックオプション」の三角マークが表示されると思いますが
目障りであれば(Excel2007以降をお使いの場合)
画面左上の丸いOfficeボタン(Excel2010以降は「ファイル」)→ Excelのオプション(オプション)
→ 数式 → 「エラーチェック」の「バックグラウンドでエラーチェックを行う」の
チェックを外しておきます。m(_ _)m
回答頂いたコードで
手入力により、思いとうりの結果が出ました
ありがとうございます
VBA初心者なのではっきり理解できていないのですが
マクロの中で、計算しその結果に対して表示を変えたいのですが
このコードをアレンジすることで可能なんでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
昔のあなたへのアドバイス
過去のあなたへ一度だけアドバイスを送れる電話があったとします。 もしあなたがその電話を手にしたら、いつの自分にどのようなアドバイスを送りますか?
-
小数点以下の数字だけ小さいフォントで表示
Excel(エクセル)
-
EXCEL 小数点以下を小さいフォントの文字で・・
Excel(エクセル)
-
EXCELにて、整数と小数点を色分けしたい
その他(ソフトウェア)
-
-
4
Ecxelで少数を入力するときにフォントを変えたい
Excel(エクセル)
-
5
セルの書式設定で一部のフォントサイズを変更したい
その他(Microsoft Office)
-
6
小数点以下の桁数を入力データに応じて設定する方法
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・「I love you」 をかっこよく翻訳してみてください
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・昔のあなたへのアドバイス
- ・かっこよく答えてください!!
- ・あなたが好きな本屋さんを教えてください
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・【大喜利】【投稿~8/27】 こんなガソリンスタンド二度と来るか!なぜそう思った?
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・【お題】動物のキャッチフレーズ
- ・【お題】甲子園での思い出の残し方
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・自分用のお土産
- ・人生で一番お金がなかったとき
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・ちょっと先の未来クイズ第1問
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELで特定のセルに表示...
-
Excel内での検索結果をシート...
-
エクセル 数字をすべて○などの...
-
クリックすると文章が表示され...
-
【EXCEL】先週の月曜日の日付を...
-
Excelで、図形内の文字をセルに...
-
EXCELのセルや文字色の反映
-
太字に設定されているセルの個...
-
Excel ハイパーリンクのURLを別...
-
Excel2007 色のカウント (VBA)
-
ページ内ハイパーリンクの表示...
-
セルがクリックされた回数をカ...
-
マクロを実行すると画像がズレ...
-
セルの内容をテキストボックス...
-
セル背景や文字を点滅させる方法
-
エクセルシート内のある数値以...
-
エクセル シート保護された共...
-
エクセルでページ数をあるセル...
-
エクセル マクロ 相対パスか...
-
VBA(エクセル)のコンパイルエラー
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELで特定のセルに表示...
-
エクセル 数字をすべて○などの...
-
Excel内での検索結果をシート...
-
クリックすると文章が表示され...
-
太字に設定されているセルの個...
-
Excelで、図形内の文字をセルに...
-
セルがクリックされた回数をカ...
-
フォントの色を指定して削除出...
-
Excel ハイパーリンクのURLを別...
-
エクセルでPDFリンクを大量...
-
Excelでセルをクリックす...
-
マクロを実行すると画像がズレ...
-
VBA 見つからなかった時の処理
-
Excelで挿入した図をセルの中央...
-
エクセルでの検索ボックスの作...
-
現在のセルの位置を返す関数は...
-
Excel2007 色のカウント (VBA)
-
アポストロフィーの一括挿入 ...
-
セル背景や文字を点滅させる方法
-
エクセルでページ数をあるセル...
おすすめ情報