• ベストアンサー

excelで下一桁を選択する方法

質問失礼します。     A    B    C  1   1 2        5    5 3  10    5    5 4  21  5        5    5 6  31 7   1 8  60    5    5 A列の下一桁が1になる場合だけを選び、 下一桁が1の場合は、B列、C列の表示を何もなしに変更する数式はできるでしょうか? よろしくお願いします。

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

  • ベストアンサー
  • oyaji-man
  • ベストアンサー率34% (123/354)
回答No.3

一度入力してしまったデータ(数値)を検索して修正するのはVBEなら出来るかもしれませんが・・・ 私にはチョッと出来ません。 ただこれから入力をするのに、間違って入力しないようには出来ます。 具体的には 「入力規制」を利用すればどうでしょうか? 例えば、B1のセルでデータ→入力規制→設定→入力値の種類をユーザ設定、空白欄を無視をチェックオフ→数式を =MOD(A1,10)=1 →エラーメッセージ→不正なデータが入力されたらエラーメッセージを表示をチェックオン、スタイルを停止、エラーメッセージを記入で、「セルAが下一桁が1ではありません!」と記入 タイトルも「入力出来ません」とかで あとはOKでどうでしょう?

modesut
質問者

お礼

お答えありがとうございます。 VBEですか。調べてみます。 入力規制使わせてもらいます。 本当に色々教えていただきありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • oyaji-man
  • ベストアンサー率34% (123/354)
回答No.2

B列 C列にはすでに なにかデータが入力されている状態でのご質問でしょうか? だとすると数式では無理ですね、No.1さんの方法で条件付書式で表現を変えるしか方法がありません、でないとせっかく入力したデータがだめになってしまいますから・・・ 逆に数式でB列 C列のデータが入っているならやり方は他にもあります。 例えばB列の式が D?/E? だとして =IF(MOD(A1,10)=1,"",D1/E1) とか エラー表示がいやなら =IF(ISERROR(IF(MOD(A1,10)=1,"",D1/E1))=FALSE,D1/E1,"") とか ありますよ。

modesut
質問者

補足

ご回答ありがとうございます。勉強させてもらっています。 >B列 C列にはすでに なにかデータが入力されている状態でのご質問でしょうか? 下一桁が1の行の列B、列Cには数値やデータなどは、入力していない状態です。下一桁が1以外は,入力していきます。 作業の際にそこに間違えて入力してしまわないように、または入力してしまっても自動で削除できるようにしたいと思って計算式を考えています。 下一桁が1という条件を数字の1に変えて、A列に1が入る行の列B、列Cを表示をしない、またはそこに入力できないといった式はできるでしょうか?     A    B    C  1   1 2        5    5 3  10    5    5 4   1  5        5    5 6   1 7   1 8  60    5    5

全文を見る
すると、全ての回答が全文表示されます。
  • Cupper
  • ベストアンサー率32% (2123/6444)
回答No.1

10で割った余りが1ならば文字の色を見えない色に…の方法です。 B,C列に 書式→条件付き書式→ 【数式が】【=MOD(A1,10)=1】 そして 書式→「フォント」タブ→色→白色を選ぶ これはあくまでも見えなくするだけで数値はそのままです。

modesut
質問者

補足

ご回答ありごとうございます。できれば数値を入力しない方法をさがしています。早速のお返事ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 数字の下1桁について0~4は0、5~9は8にする方法

    はじめまして。EXCELでの質問です。 A列に数値が並んでいて、その数字の下一桁に対し0~4は0に、5~9は8にして、全体を表示させる方法を教えてください。 (例:1234の場合、下1桁は4ですので、4は0~4の間にあるので、表示としては1230になり、1239の場合、下1桁は9ですので、9は5~9の間にあるので、表示は1238としたいんですが?) 簡単にできる方法はありますか? 早急に変更依頼がきておりますので何卒、よろしくお願いします。

  • エクセルで数字の下1桁を見て並び替える

    エクセルで下記の様な数字が並んでいます。 A列の下1桁の数字は上から順に増えていて、ある数字で1に戻りまた増えています。 その数字は毎回同じではなく、6までの場合もあれば10までの場合もあります。 下記の例では上から6行、次は4行、次は7行と下1桁の数字によってグループ分け出来ますよね? それで上から6行目までのB列の値(462~530)をコピーしてSheet2のA1から横方向に並べます。 その次は7行目から10行目までのB列の値(356~487)をコピーしてSheet2のA2から横方向に並べます。 その次も同じように並べます。 B列が空欄の場合もありますが、その場合はそのままSheet2にも空欄のセルを作ります。 1グループ全部のB列が空欄でもそのままSheet2に空欄の行を作ります。 この動作をマクロで出来る式を教えて頂けないでしょうか? A列          B列 0213240101     462 0213240102    387 0213240103    556 0213240104    585 0213240105    536 0213240106    530 0213240201    356 0213240202    632 0213240203    486 0213240204    487 0213240301    586 0213240302    670 0213240303    619 0213240304 0213240305    645 0213240306    487 0213240307    651 0213240401 0213240402 0213240403 0213240501    455 0213240502    623 0213240503    411 Sheet2 A列   B列    C列   D列    E列    F列   G列 462    387    556    585    536    530 356    632    486    487 586    670    619            645    487    651    455    623    411

  • EXCELで 一桁の数値を二桁に

    教えてください。 エクセルで、入っているデータを編集しているのですが A列には、一桁の数値が B列には、1桁から2桁の数値が C列には、1桁から2桁の数値が D列には、文字データが入っています。 D列のデータに対する対応表を作るために このA~C列のデータを CONCATENATE関数を使って合体させたいのですが、 (合体させると、数値がダブらない為) B列とC列に入っている1桁の数値を 2桁に変換したいのですが、 何かよい方法はありませんでしょうか? 手打ちで変換するには、かなり多いデータなのです。 どなたか、助けてください。

  • エクセルで、6桁の数値から、大きな位の数値から4桁を取り除き、残る数値を表したい。

    初心者です。 エクセルのセルに6桁と7桁の数値が 不規則に並んでA列に入っています。 6桁でも7桁の数値でも、大きな位の数値から4桁を取り除き、 1の位と10の位の2桁の数値、7桁では、3桁の数値に B列に入れたいのですが、数式を使って出きることですか? 例)846529 の場合には 29、 2576846 の場合には846.が欲しい。 よろしくお願いします。

  • 下二桁だけ

    C列に4桁までの数字を入れます。(1~9900) C列に入力した数の下二桁が96~29の場合はすべてE列に下二桁を33と表示したい. C列に入力した数字が下二桁が30~62の場合はすべてE列に下二桁を66と表示したい. C列に入力した数字が下二桁が63~95の場合はすべてE列に下二桁を00と表示し下三桁は1プラスした数字を表示したい 解りやすく書きますと  C列       D列   1~26の場合    33 27~62の場合    66 63~96の場合   100 97~126の場合   133 127~162の場合  166 163~196の場合  200 197~226の場合  233 227~262の場合  266 c列には、1から9900までの数字が入ります よろしくお願いします

  • エクセルの条件付き書式で隣のセルの下4ケタと比較

    エクセルの条件付き書式で A1セルの10桁の文字列のうち下4桁B2のセルの10桁の文字列のうち 下4桁と一致すれば、色を変えず、一致しない場合黄色に変える ような使い方はできますか?

  • エクセルで文字列の5桁目が9なら0に変更

    エクセル初心者です。 インターネットで調べてみたのですが、同様の質問にヒットしませんでしたので、教えてください。 A列に8桁の会員番号が文字列で表示されています。 この8桁のうち右側の5桁を関数(RIGHT(a8,5))でB列に抽出しています。 抽出された5桁の数字ですが、最上位桁が9の場合、0に変えたいのです。 A        B 01004567    04567  02015678    15678 03098765    98765 → 9を0に入替して「08765」と表示 このような対応が出来る関数を調べたのですが分かりませんでした。 ご教示のほど、よろしくお願いします。

  • 数字の桁ごとに、各セルに抽出

    最大11桁の数字を各セルに抽出したい。 金額をF列に入力すると、 D列には下3桁が表示され、 C列には右から6桁~4桁、 B列には右から9桁~7桁、 A列には右から11桁~10桁と、 表示されるように、関数を組みたいです。

  • Excelで値と値をくっつけたり、+1する方法を教えてください

    添付した画像のような表を作成しています(添付用に加工しています) A列とB列は、手入力します。  A列:2桁の半角英数  B列:3桁の半角英数 C列に入るものは、  11(固定された数字)+A列の値+B列の値+001から始まる連番 ですので、3行目でいうとC3に「11 A1 B22 001」(分かりやすく半角スペースを空けています)      4行目ですとC4に「11C3D44002」 という値をA列、B列に入力をしたら、C列に上記のような10桁の値を 自動で入力されるしたいのですが、関数などで行うことでできないものかと思い質問しました。 現状は、C列も手入力で行っておりまして、  ・最初の2桁は、固定数値  ・A列とB列の値を使用している  ・最後の3桁は001からの連番を使用している    ※終わり3桁は無条件で001~の連番にしている もし関数などで対応可能でありましたら、どのような数式にすればよいのか ご教示頂けるとありがたく思います。 よろしくお願い致します。

  • エクセルでの集計方法

    たとえば、このようなリストが500行くらいあります。 コード 123 121 101 111 112 103 121 上2桁(10、11、12)は部屋番号 下1桁(1、2、3)は年代区分だとします。 (本当は各10種類づつあるが) 下記のように A列に、部屋番号を表示 B列に、年代区分に表示したとして、 C列に、データの個数の合計 を表示する方法は? A列、B列、C列 10、1、○○ 10、2、○○ 10、3、○○ 11、1、○○ 11、2、○○ 11、3、○○ ○○はデータの個数 エクセルは、2003です

専門家に質問してみよう