• ベストアンサー

セルに指定記号入力と同時に他のセルも反応の方法は?

エクセルの指定した記号を入力すれば指定したセルに数字が入る方法を教えてください。 たとえば、あるセルに「a4」と入力すれば、右隣のセル2つに2、2と数字が自動入力。 「b5」と入力すれば右隣のセル3つに1、2、2と自動入力するというような方法です。 よろしくお願いします。

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.2

 今仮に、指定記号を入力するセルがSheet1のA2セルであるものとします。  まず、適当な使用していないシート(ここでは仮にSheet2とします)のA列中の適当なセルに a4 と入力し、その右隣のセル2つに2、2と入力して下さい。  次に、Sheet2のA列中のまた別の適当なセルに b5 と入力し、その右隣のセル3つに1、2、2と入力して下さい。  その他の指定記号に関しても、同様に、Sheet2のA列のセルに指定記号を、その右隣のセル範囲に表示したい値を入力した一覧表を作成して下さい。  次に、Sheet1のB2セルに次の数式を入力して下さい。 =IF(COUNTIF(Sheet2!$A:$A,$A2),IF(VLOOKUP($A2,Sheet2!$A:B,COLUMNS($A:B),FALSE)="","",VLOOKUP($A2,Sheet2!$A:B,COLUMNS($A:B),FALSE)),"")  そして、Sheet1のB2セルをコピーして、その右隣のセル範囲に貼り付けて下さい。  これで、Sheet1のA2セルにエクセルの指定した記号を入力すれば、その右隣のセル範囲に該当する値が表示されます。

kishiwander
質問者

お礼

わかりやすい表もつけていただきましてありがとうございました。

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

その他の回答 (3)

回答No.4

A列の数字をトリガにすると、こんなガンジ?? Sub DivideBy2() Dim kk As Long Dim nn As Long Dim hNum As Long Dim xOdd As Long With Sheets("Sheet1") nn = .Cells(.Rows.Count, 1).End(xlUp).Row If ((nn = 1) And (.Cells(1, 1).Value = "")) Then MsgBox ("No Data Found!!") Exit Sub End If For nn = 1 To .Cells(.Rows.Count, 1).End(xlUp).Row If (.Cells(nn, 1).Value = "") Then Exit For hNum = Int((.Cells(nn, 1) + 1) / 2) If hNum > 255 Then hNum = 255 End If If hNum > 0 Then 'xOdd = hNum - Cells(nn, 1) / 2 xOdd = .Cells(nn, 1) Mod 2 If xOdd = 1 Then .Cells(nn, 2) = 1 Else .Cells(nn, 2) = 2 End If If hNum > 1 Then For kk = 2 To hNum .Cells(nn, kk + 1) = 2 Next kk End If End If Next nn For kk = 1 To hNum + 1 Columns(kk).EntireColumn.AutoFit Next kk End With End Sub

kishiwander
質問者

お礼

ありがとうございまいた。 関数での命令もいろいろあるものだとわかりました。 初心者なので、もっと勉強します。

全文を見る
すると、全ての回答が全文表示されます。
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.3

シート名タブを右クリックしてコードの表示を選ぶ 現れたシートに下記をコピー貼り付ける private sub Worksheet_change(byval Target as excel.range)  dim h as range  for each h in target  select case h.value  case "a4" ’a4の場合 以下同じ   h.offset(0, 1) = 2 ’一つ右   h.offset(0, 2) = 2 ’二つ右 以下同じ  case "b5"   h.offset(0, 1) = 1   h.offset(0, 2) = 2   h.offset(0, 3) = 2  case else  end select  next end sub ファイルメニューから終了してエクセルに戻る セルにa4やb5を記入すると自動入力する。

kishiwander
質問者

お礼

ありがとうございました。 エクセル関数は初心者で複雑な命令が必要なのだとあたらめて思いました。

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

IF関数を使えばできますけど、入力を区別する記号はどのくらいの数あるのですか?

kishiwander
質問者

お礼

7つほどです

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

関連するQ&A

  • 【Excel】指定先のセルの内容に応じた表示方法

    【Excel】指定先のセルの内容に応じた表示方法 今ここに、2つのエクセルファイルがあります。 αはデータ出力用、βはデータ入力用です。 αのA列にβのB列に入力されたものを指定の形式に変換して出力させることは可能でしょうか。 例えば、βのB列には数字、★などの記号と空白セルがあります。 それをαのA列に、βのB列が数字なら○、★なら★、空白セルなら×と変換をさせた状態で表示させたいのです。 αのデータにβのデータを入れる場合は、「=指定のセルをクリック」で出来るのですが、指定の変換方式で出力できればと思い質問させていただきました。 乱文駄文で失礼致しますが、皆さん宜しくお願い致します。

  • セルの簡単入力方法

    エクセルについて教えてください。 ひとつのセルを「A」や「1」や「イ」や「○」などなにか一文字で入力できないものでしょうか? 仕事で、年配者など複数の人が同じ画面を操作するので、セルの指定間違いや(A1やF5などの直接入力や、そのセルをクリックする方法)、二桁や三桁の数字も入力ミスがあるため、あらかじめ同じページ内に、 例えば、A1は「イ」B1は「ロ」C1は「ハ」など作っておき、後は簡単に「イ」「ロ」「ハ」という入力方法で活用したいのですが、無理なのでしょうか。

  • エクセル:指定した別シートのセルに入力する方法

    エクセル2000 を使用しています。 sheet1 のセルに数字を入力して ・sheet2、sheet3、・・・ の指定したシートの指定したセルに文字を反映させる方法はありますでしょうか? 例)sheet1 A3 に"100"と入力すると、('sheet2'の'B2'を指定)   sheet2のB2に"100"と反映   同様に sheet1 A3 に"300"と入力すると、('sheet3'の'C5'を指定)   sheet3のC5に"300"と反映 ※作業しやすい為に入力セルを一つのみにするというのは難しいでしょうか? 条件 ・一度指定して入力したセルは何度も入力しなおします。 ・入力は数値のみです。 ・入力の対象シートは30シート程あります。 対象となるセル全てに関数をいれてみて・・とやってみたのですが、たどり着きませんでした。 分かる方どなたか教えていただけますでしょうか? 質問文が下手ですいません、回答していただけたら補足で再度質問しなおしたいと思います。。 VB、関数どちらでも分かる方お願いします。

  • エクセルで指定のセルへ簡単にジャンプできる方法

    教えてください。 エクセルの表入力で、あるセル(たとえばA1)に1の数字が入っていたとして その数字(若しくは文字)で次に入力するセルがたとえばA12のセルとした場合 あるセル(たとえばA2)へカーソルを持っていくと(又はクリックしたとき) 指定のA12へカーソルがジャンプするような方法がないでしょうか? (又はA2へ1を入力したらA12へジャンプする方法でもいいのですが) ハイパーリンクで実際出来たのですが、セル数が多くてそれぞれちがった ジャンプ先を指定する場合、コピー貼付けをすると1個1個ジャンプ先を 修正しなければならないと言った手間がかかりました。簡単に 指定セルへジャンプさせる方法、関数のようにコピーした場合セル番号が 変更され修正しなくてもいいような方法がないでしょうか?

  • エクセル 数値を記号で入力する方法を教えて下さい

    1.エクセルで見積書を作ろうとしています。 2.項目に対して単価が1000円、2500円、7000円、12000円と4種類とします。 3.単価欄に数値を入力するのではなく1000円=A、2500円=B、7000円=C、12000円=C   としてA,B,C,Dと記号を打ち込みます。 4.数量×単価=金額のヨコ計算をする。 5.単価欄はセルに打ち込んだ数字を記号に表示するのではなく直接記号を打ち込みます。 検索の方法が悪いのかなかなか見付けられないので質問しました。 当方エクセル勉強中の為なるべくシンプルにお願い致します。

  • エクセルでセルごとにちがう記号を選択入力する方法を教えてください

    パソコン初心者ですので操作で困っています。エクセルのデータ入力で例えばB列のそれぞれのセルに「○、●、×、斜線の4ヶの記号と記号無し、」の計5種類の内どれかを選択して入力したいのですが、B列の全部(40列ほどです)に、マクロのような設定をする方法を教えて頂けないでしょうか。 (その方法がマクロかどうかは、パソコンど素人で分かりませんが)、お手数おかけしますが、出来れば素人でも出来る操作方法でお願い致します

  • エクセルで入力のあるセル=1にする方法

    エクセル2003を使用してます。 あまり使ったことがないので基本的なことだったらすみません…。 数字入力のあるセルを認識して別のセルに『1』と表示させる方法はありますか? 《例》 (入力するセル)     (表示するセル) A1 1        B1 1 (A1~A5を認識) A2 1        B2 1 (A1のみ認識) A3 2        B3 1 (A2~A5を認識) A4   (入力なし) A5 1 (入力するセル)     (表示するセル) A1 1          B1 1 (A1~A5を認識) A2   (入力なし)  B2 1 (A1のみ認識) A3   (入力なし)  B3   (表示なし)(A2~A5を認識) A4   (入力なし) A5   (入力なし) こんな感じにしたのですが、何かできる手段はありますか?

  • セルに入った数値によって、参照するセルの番地を指定できますか?

    エクセルについて質問します。 あるセル(A1)に数字1を入れると セルB1の内容が「=C1」に A1に数字2を入れると セルB1の内容が「=C2」に というように、B1が参照するセルの番地をA1に数字を入れることで 指定することはできるのでしょうか。 ご教授お願いいたします。

  • エクセルで、左側のセルに数字入力⇒右隣のセルに文字列を表示する方法

    エクセルで、左側のセルに数字入力すると、右隣のセルに文字列が表示される方法を教えてください。 1~500ほどのコードと、それに対応する顧客名のコードを昇順に並べたリストがあります。顧客コードを入力すると顧客名が隣のセルに自動的に表示されるようにしたいです。よろしくお願い致します。

  • 入力と同時に並び替わるには?

    セルAに氏名、Bにタイムを入力していきます。 このタイムが速い順に並べ替えたいのです。全て入力して昇順、降順に並べ替えることでできるのですが、入力していきながらセルBのタイムが速い順に自動で並び 変わるようにできるのでしょうか? エクセルはバージョン2002です。

専門家に質問してみよう