[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『C行に1と入力したら 有 0と入力したら 無 と出したい』(さぼてん)
とても初心者です。よろしくお願いします。
A B C D 1 1 2 1 3 0 4 0 5 1 と入力したら A B C D 1 有 2 有 3 無 4 無 5 有
と 画面に出るようにしたいのですが
どの関数を使ったらよいのか?が
わかりません。よろしくお願いします。
< 使用 Excel:unknown、使用 OS:unknown >
C列は0か1しか入力しないのでしょうか? れとも他の文字や数値が入る可能性はありますか? た、ブランクの可能性はありますか? (カリーニン) 2015/04/17(金) 23:29
0と1しか入力しないのでしたらユーザー定義書式でこんな方法でも。
[=0]"無";"有"
※数値だったら0以外はすべて「有」となります。 (カリーニン) 2015/04/17(金) 23:33
C列には 有 無 以外の文字が入る事はありません。
よろしくお願いします。
(さぼてん) 2015/04/17(金) 23:45
提示したユーザー定義書式ではできなかったですか?
既に入力してあるものも数値に直して表示で「無」「有」に するのでしたら「置換」で行けると思います。 (カリーニン) 2015/04/17(金) 23:52
作業セルが使えるなら、
=IF(A1=1,"有",IF(A1="","",IF(A1=0,"無","")))
として後で値で貼り付け直し、という方法も。 (カリーニン) 2015/04/17(金) 23:56
月曜に試した後にまたどうだったかを、入力します。
すみません。が少々お付き合いください。
ありがとうございます。
(さぼてん) 2015/04/18(土) 00:31
シートのイベントを利用した方法です。 これは表示形式ではなく値そのものを変換します。
Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(Target, Range("C:C")) Is Nothing Then Exit Sub If Target.Value = "" Then Exit Sub Select Case Target.Value Case 1 Target.Value = "有" Case 0 Target.Value = "無" End Select End Sub (カリーニン) 2015/04/18(土) 08:20
飛び入り失礼します。 Changeイベントで、(カリーニン) 2015/04/17(金) 23:33 のカリーニンさん提示の書式を設定してみました。 あわせて、C列、複数セル領域に値が入ると(フィルコピーやコピペや、選択してDltキー等)Target.Value 参照でエラーになりますので そこの手当てを追加してあります。
Private Sub Worksheet_Change(ByVal Target As Range) Dim r As Range Dim c As Range Dim fmt As String
Set r = Intersect(Target, Range("C:C")) If r Is Nothing Then Exit Sub
For Each c In r Select Case c.Value Case 0, 1 c.NumberFormatLocal = "[=0]""無"";""有""" Case Else c.NumberFormatLocal = "G/標準" End Select Next
End Sub
(β) 2015/04/18(土) 10:50
βさん、フォローありがとうございます。
0か1しか入力しないのなら、セル範囲に最初にどちらか多い方を コピペなどで入れておいて違うセルだけを入れなおす、という方法 でもいいですね。 (カリーニン) 2015/04/18(土) 22:22
該当のシートのシートタブを右クリック、コードの表示を選んでください。 でてきたところがVBE画面のシートモジュールというところです。 ここにコードを貼り付け、右上のXボタンでVBE画面を閉じ、シートに戻ります。
で、C列に何か値を入れてみてください。
(β) 2015/04/21(火) 20:35
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.