• ベストアンサー

表示形式を変えるマクロのコードは?エクセル2010

エクセル2010です。 よろしくお願いします。 特定の範囲のセル範囲(I7:M29)の表示形式が数値、-1234 文字色赤となっています。 それを 特定のセル範囲に数値を入力し終わって セル範囲のあるセルを選択した状態で あるコマンドボタンをクリックしたら、そのセルの表示形式を(1234) 文字色赤 としたいのですが また あるコマンドボタンをクリックしたら  特定の範囲(I7:M29)を最初の状態、 表示形式 -1234 文字色赤にしたいのですが マクロでの使用は どういったコードが 考えられますでしょうか?

  • mh1211
  • お礼率70% (309/441)

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.2

開発タブからActiveXコントロールのコマンドボタンを2個,シート上に配置する それぞれ右クリックしてコードの表示を選び,下記のようにする private sub CommandButton1_Click()  if activecell.address <> "$A$1" then  msgbox "所定のセルが選択されていません"  exit sub  end if  if application.count(range("I7:M29")) < 115 then  msgbox "所定のセル範囲に数値が入力し終わっていません"  exit sub  end if  range("I7:M29").numberformatlocal = "0_);[赤](0)" end sub private sub CommandButton2_Click()  if activecell.address <> "$A$1" then  msgbox "所定のセルが選択されていません"  exit sub  end if  if application.count(range("I7:M29")) < 115 then  msgbox "所定のセル範囲に数値が入力し終わっていません"  exit sub  end if  range("I7:M29").numberformatlocal = "0_ ;[赤]-0_ " end sub #エクセルでは2種類の「コマンドボタン」が利用できます。具体的にナニを使いたいのかによって,正しいマクロの書きぶりが変わります。 #「あるセル」とか「所定のセル範囲」では,具体的なサンプルマクロは書けません。コピーしてツカエル回答が必要なときは,具体的なセル番地とか漏れなくキチンと情報を出すように覚えてください。

mh1211
質問者

お礼

keithinさん 回答ありがとうございます。 コマンドボタンを配置してできました。 ありがとうございます。

mh1211
質問者

補足

keithinさん いつも回答していたき ありがとうございます。 今日中に ためさせてもらいます。 具体的なセル番地 もれなく記入するようします。すみません。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

質問の表現をもっと文章で明確に出来ないのか? 数値セルの表示形式で、負の数の場合に、 A.文字色を赤色にし B.マイナス符号つきにしたい。 とかね。 >そのセルの表示形式を(1234) 文字色赤 としたいのですが 上記に比べて、マイナス符号をつけなくしたいのか? ーー それぐらいなら、マクロの記録を取ってコードを見たら仕舞いではないか。わざわざ質問する意味は何か? 初心者はマクロの記録のありがたさを忘れている風な質問が多いが。 > セル範囲のあるセルを選択した状態で この意味は何? >コマンドボタンをクリックしたら  これのコードが判らないのか。 それならGoogleで「VBA コマンドボタン クリック」で照会してみたら。 http://park7.wakwak.com/~efc21/cgi-bin/exqalounge.cgi?print+200904/09040051.txt

mh1211
質問者

お礼

imogasiさん 回答ありがとうございます。 以後 気おつけたいとおもいます。 もうしわけありませんでした。

  • DreamyCat
  • ベストアンサー率56% (295/524)
回答No.1

マクロの記録ではこのようになりました。 Selectionの部分を特定の範囲に変えるだけでできそうです。 Selection.NumberFormatLocal = "0;[赤]0" Selection.NumberFormatLocal = "0_ ;[赤]-0 "

mh1211
質問者

お礼

DreamyCatさん 回答ありがとうございます。 自分もそのようになりましたです。

関連するQ&A

  • 値のクリアと表示形式を数値 赤1234に変更マクロ

    エクセル2010です。よろしくお願いします。 通常 作業する前提として -1234 と 入力した時に 赤1234と表示させている場合と 赤(1234)と表示させる場合が あります。(通常時は 表示形式 数値 赤1234 です。) 作業終了時に 表示形式を 数値 赤1234に ボタンクリックで戻したいのですが・・・ ※ 入力エリアを 選択してからの マクロ実行で選択したセルの値クリアと表示形式変更と   あらかじめ範囲(I17:M29、I32:M51)を決めての値クリアと表示形式変更   2つのパターンでは どうなりますでしょうか? 1 選択したアクティブセルを 値をクリア 2 表示形式を 数値 赤1234に  以上のすマクロは、どういう形になりますでしょうか? よろしくお願いします

  • Excelの表示形式について教えてください

    質問1.数値を入れても、文字を入れても ( )で囲まれた形で表示させるには 表示形式はどのようにしたら良いのでしょうか 質問2.上の質問の続きですが ( )だけ黒で中は赤、( )だけ赤で中は黒、( )も中も赤色にすることは可能でしょうか?わかれば赤以外の色のやり方も教えて下さい

  • エクセルの表示形式の変更について

    エクセルの表示形式の変更について質問させていただきます。 今複数のセルに数字が入っていて、現在の表示形式は『標準』です。 セルに入っている数字はそのまま、表示形式を『文字列』にしたいと思っています。 変更したい範囲を選択して、セルのプロパティの表示形式を変更をしますが、 これだけでは実際に変わらず、対象セルのダブルクリック等で一度セル内の編集状態にすれば、文字列に変わるようです。 わざわざセルの編集状態にせず、対象セルの表示形式を一括で変更するにはどのようにすればよいのでしょうか。 『文字列』→『数字』は形式を指定して貼り付けの乗算等を使えばできたのですが、その逆となりますとうまくできませんでした。 お知恵をいただけますようお願いいたします。

  • Ecxellでセルの数値によって、そのセルの表示形式を変える方法

    Ecxell2003で、セルの数値によって、そのセルの表示形式を変える方法があれば、教えて下さい。 (例)セルA1の値が0以下だったら、その数値を"赤色の文字"で表示し、0以上なら"青色の文字"で表示する。 =if(a1<=0,赤色の文字で表示,青色の文字で表示) 上記のような関数または別の方法などがあれば教えて下さい。

  • エクセルの表示形式の作り方

    エクセルの表示形式で8/1/(金)のカッコの中の曜日だけ赤色にするユーザー設定というのはできるのでしょうか? 表示形式のサイトを見ているのですが全部の色が変わってしまいます。 セルの中は一色でしか表示できないのでしょうか?

  • 表示形式を追加できません

    エクセルの使用中、 ある特定のセルに対して、 罫線・セルの色・文字の色を変更しようとすると 「表示形式を追加できません」 というメッセージが表示されます。 同じシートの中でも 変更できるセルと出来ないセルがあります。 どうすればいいのでしょうか?

  • 「負の数の表示形式」欄の違い

    こんばんは。Exsel2007で質問します。 「セルの書式設定」ダイアログボックスの「表示形式」タブ、「数値」で「負の数の表示形式」があります。   『 (1234) (文字が赤色)   (1234)   1234  (文字が赤色)   -1234   -1234  (文字が赤色)   △ 1234   ▲ 1234          』 なわけですが、どう使い分ければいいのでしょうか?試しにセルに一番上の「(1234) (文字が赤色)」を、「小数点以下の桁数」を1にして設定しました。50と打ち込むと50.0と出ますが、()もつかず文字も赤になりません。上から4つ目の「-1234」に設定し直しても、50は50.0となります。何が違うのでしょうか? それと55.5にしたい場合、55.5と直に打ち込まないと555では555.0になるし、55を打って確定してから5を打っても555.0になります。「小数点以下の桁数」を1にして設定した時、50は50.0に自動でなりますが、55.5にする時は手動ですか?それとも50と同様打ち込めば55.5に自動でする方法がありますか? この2点、解る人教えて下さい、お願いします。

  • エクセルのマクロについて

    初心者の私ですが、エクセルでマクロについて教えていただきたいのですが、 質問1:コマンドボタン1をL6セルに作成。ボタン1(名称は”未”)をクリックするとF6からK6のセルが赤色反転する。さらにボタン名称が”済”に変わる。もう一度ボタン1を押すとセルの色は元に戻りボタン名称が”未”に戻る。このようなボタンは作成できますか? 質問2:さらに、そのボタンをシート内に多数作成したいのですが、コマンドボタン2をL7セルに作成。ボタン2(名称は”未”)をクリックするとF7からK7のセルが赤色反転する。さらにボタン名称が”済”に変わる。もう一度ボタン2を押すとセルの色は元に戻りボタン名称が”未”に戻る。コマンドボタン3をL8セルに作成。ボタン3(名称は”未”)をクリックするとF8からK8のセルが赤色反転する。さらにボタン名称が”済”に変わる。もう一度ボタン3を押すとセルの色は元に戻りボタン名称が”未”に戻る。・・・くりかえし・・・コマンドボタン250をL255セルに作成。ボタン250(名称は”未”)をクリックするとF255からK255のセルが赤色反転する。さらにボタン名称が”済”に変わる。もう一度ボタン250を押すとセルの色は元に戻りボタン名称が”未”に戻る。という具合にコピーしたいのですが、簡単な方法はありますか?

  • エクセル:数値をテキスト形式で揃えたい

    5~6桁の、英字と数字の混在したコードのついたデータが一万件ほどありまして、これを利用してピボットテーブルで処理しなければならないのですが、 いろんな人が処理するデータなので、数字のみの(アルファベットの混ざらない)コードの場合、数値のものとテキスト形式のものが混在していて、同じコードがテーブル上で別々になってしまいます。 数字のみでテキスト形式の場合、セルの左上に緑色の三角のエラーインジケータが付いて 「このセルにある数値が、テキスト形式か、またはアポストロフィで始まっています。」 とメッセージが出ますが、これが付いた状態のほうがソートしたときに英数字の混ざったものときれいに並ぶので、この状態で扱いたいのです。 どうやらセルの設定を文字列にして入力しただけではこの状態にならないようで、今は既存の三角のついたものと同じ数字を手作業で貼り付けたりしていますが、数値の入ったセルを一度にテキスト形式にする方法はあるでしょうか? (この逆のパターンだったら、範囲選択して左に出る◇に!のついた部分をクリックして「数値に変換する」を選べばよい話なのですが…。)

  • エクセルでの数値の表示形式を変えたい。

    エクセル2000を使用しています。 たとえば、123億4560万7000円などの数値は12,345,607,000と 言うように、エクセルのセルに入力しますよね。 それで、〔書式〕-〔セル〕のセルの書式設定の表示形式で ユーザー設定を利用して、123億と表示させたいのですが どうすればよいのでしょうか? 頭の数値左から3桁だけを利用して残りの数値は億と言う文字で くくってしまうというか。。。。 説明がうまくなくてすみません。 どなたかお分かりになる方よろしくお願い申し上げます。

専門家に質問してみよう