- ベストアンサー
エクセル2000での表示か書式??
12345と入力したら123と表示するようにしたいんですがユーザー定義でしたらいいんでしょうか?ある表があり5桁ぐらいの数字を入力するのですがまたあとで3けたにやり直しています。質問の意味が伝わったかわかりませんが誰かおしえて~
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
VBAですが、数値の右2桁を切り捨てる例で考えました。 ある範囲を指定して、ボタンを1回クリックすると 数値の右2桁を切り捨てます。 Sheet1にコマンドボタンを1つ貼り付けて Private Sub CommandButton1_Click() Dim cl As Range For Each cl In Selection cl = Int(cl.Value / 100) Next End Sub のコードを貼り付けます。 A1:A6の 123456 2356 4578234 325 56478 32687はA1:A6を範囲指定して、ボタンをクリックすると 「それぞれのセルで」(ここがポイント) 1234 23 45782 3 564 326 になります。 興味があり(1)ボタンの貼り付け方(2)VBEにコードの貼り付け方 が必要な時は言ってください。
その他の回答 (6)
- suzusan7
- ベストアンサー率64% (22/34)
journeyさんからの質問ではございませんが関連した質問ということで、 失礼してこちらに解答させていただきます。 まず、imogashiさんの設定で文字の配置の縦位置が下詰めになっていることと思います。 今回の例において、行高さが1行以下であれば1行目の 下が表示の基準となるため1行目のみ表示されます。 行高さが1行より大きくなると、2行目の下が表示の基準となるため、 1行目が見えない部分(セルの上の方)にいき、2行目が表示されたように見えてしまいます。 試しに、行高さを少し広げて56を表示している状態から、フォントサイズを大きくしてみてください。 行高さが1行以下となるフォントサイズでは1234が表示され、 行高さが1行より大きくなるフォントサイズでは56が表示されます。 imogasiさんが56が表示されるというのは、下詰めで かつ、行高さが1行より大きいためとなります。 以上を踏まえると1234を確実に表示する方法のひとつは 行高さを、使用しているフォントサイズに対して1行以下となるようにすることとなります。 もう一つの方法は、文字の配置の縦位置を上詰めにしてしまうことです。 もちろん、広げすぎると2行目も表示されてしまいます。 そのときには、表示形式にもうひとつ[ctrl+J]を 加えてしまいましょう。 そうすると空白行が一行入るため、行高さが1行より大きくなっても56は表示されません。 上詰めになるのは仕方がないと思ってください。 ただ、この方法であれば多少行高さが1行より大きくなっても 1234の上が表示の基準となっているため、常に1234が表示されるはずです。 こんなところで回答になっているでしょうか?
- imogasi
- ベストアンサー率27% (4737/17069)
journeyさんのご質問の場を借りて済みません。 #5のsuzusan7さんのご回答を拝見させていただき、こんなやり方もあるのだと思いました。関連して教えていただけますでしょうか。 123456をこの方法でやって、行高を広げると1234と56が2行になって現われ、狭めると56が残ります。元にもどし1234を確実に表示させるにはどう操作すれば良いのでしょうか。と言うのは、いじっくっていると1234が現われるケースもありますが、確実な方法はありますでしょうか。
- suzusan7
- ベストアンサー率64% (22/34)
表示形式のユーザー定義で 0[ctrl+J]00 とし、折り返して全体を表示するに チェックをいれると、下二桁は表示されません。 [ctrl+J] はctrlキーを押しながらJのキーを 押すことを意味しています。 折り返して全体を表示するにチェックが入ってないと 黒い点(表示形式の改行)が表示されてしまいます。
- imogasi
- ベストアンサー率27% (4737/17069)
VBAですが、数値の右2桁を切り捨てる例で考えました。 ある範囲を指定して、ボタンを1回クリックすると 数値の右2桁を切り捨てます。 Sheet1にコマンドボタンを1つ貼り付けて Private Sub CommandButton1_Click() Dim cl As Range For Each cl In Selection cl = Int(cl.Value / 100) Next End Sub のコードを貼り付けます。 A1:A6の 123456 2356 4578234 325 56478 32687はA1:A6を範囲指定して、ボタンをクリックすると 「それぞれのセルで」(ここがポイント) 1234 23 45782 3 564 326 になります。 興味があり(1)ボタンの貼り付け方(2)VBEにコードの貼り付け方 が必要な時は言ってください。
入力する桁が5桁と決まっているならば、Rounddown関数を使って見られたらどうでしょうか? A1のセルに12345という数字が入っているとします。 仮にB1のセルに=rounddown(A1,-2)/100と入れることで123と表示されます。 この式はA1のセルの12345という数字を十の位で切り捨てて、百の位で表示したものです。 そのほか、左から何文字かって決まっているのであればLeft関数を使う手もあります。 その際は =left(A1,3)で取り出せます。この場合取り出したものは文字扱いになりますので数値として認識させたいのであれば、=value(left(A1,3)) で取り出すことも出来ます。 Left関数は 左から何文字取り出すかという関数です。 Value関数は、文字列を数値に変える関数です。
関数で =LEFT(セル,3) とする、とか。
お礼
表示形式のユーザー定義で 0[ctrl+J]00 .... 入力できません?