• ベストアンサー

入力用のセルと管理用のセルを分けるには??

 A1・C2・D4に入力すると、E列・F列・G列に上から順に表示させるみたいな ことは可能ですか? 1回目  ABCD      EFGH 15          567 2   6 3 4   7 2回目  ABCD      EFGH 13          567 2           3 5 3 4   5 みたいな感じで空白は空白で表示したいのですが、可能でしょうか?? 分かりにくくスミマセン・・・・。分かる方よろしくお願いします!! エクセル2003です。

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

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

可能ですよ。ただし、No1のかたのおっしゃるようにワークシート関数では無理なのでマクロになります。 では全自動で実行するマクロの一例です。 手順は下記のとおりです。 簡単ですから試してみてください。 1. 該当するシートのタブを右クリックして、[コードの表示]。 2. 出てきた白い所に、以下のコードを貼付けます。 '********これより下********** Private Sub Worksheet_Change(ByVal Target As Range) Dim myC As String Dim x As Range   If Intersect(Target, Range("A1,C2,D4")) Is Nothing Then Exit Sub   Select Case Target.Address(0, 0)     Case "A1": myC = "E"     Case "C2": myC = "F"     Case "D4": myC = "G"   End Select   If Cells(Rows.Count, myC).End(xlUp).Value = "" Then     Set x = Cells(Rows.Count, myC).End(xlUp)   Else     Set x = Cells(Rows.Count, myC).End(xlUp).Offset(1)   End If   x.Value = Target.Value End Sub '********これより上********** 3.Alt+F11キーでワークシートへもどります。 これでOK A1、C2、D4それぞれに入力する都度自動で実行されます。

otoichihr
質問者

お礼

ありがとうございました。 もう一度質問しなおしてみますね!!

otoichihr
質問者

補足

さっそく試してみました!! すばらしいです!! もっと聞いてもいいですか?? 実は入力用セルは40箇所以上あるのですが、 すべての入力を確認してからE・F・G列にまとめて反映させたいのですが 無理でしょうか?? さらに反映させる場所は列ではなく指定したセル範囲にすることは可能 ですか??わがまま言ってすみません・・・・・。

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

その他の回答 (2)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

関数を使ってEFG列にデータを入力するにしてもA,C,D列のデータがその都度消される場合には不可能です。マクロを利用することになるでしょう。 しかしながら本来の目的がEFG列に次々にデータを入力していきたいとのことでしたら別の方法があります。 例えばE1セルに適当な項目名、例えばE、F1セルにF、G1セルにGという文字を入力したのちにE,F,G列を範囲として選択します。 その後に「データ」メニューから「フォーム」をクリックします。 忠告の画面が表示されますがそれを無視して「OK」ボタンをクリックします。 画面が表示されますので左側のセルに項目名がありますので、該当する窓にデータを入力して右側の「新規」をクリックします。 同じ列でデータを下方に入力していく場合には「新規」で新たな入力をすればよいのですが、別の列に移るなどの場合には「前を検索」などをクリックしてからデータを入力して「新規」をクリックするなどの操作をすればよいでしょう。一度試験してみてください。

otoichihr
質問者

お礼

こういうのもあるんですね!!! 勉強になります!! ところで先日、IF関数の選択肢・・・の件でVLOOKUPの方法についてで お礼を言えなくてすみません。 列のデータ形式を文字列に変更し解決しました。 ありがとうございました!!

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

こんにちは  エクセルは表計算ソフトなので、データに対して作用した結果を得ます。 なので、2回目のようにデータが入れ替わったら過去の記録は残せません。  この場合は表計算の機能ではなく、VBA(プログラム言語)の機能を使って構築するしかないと思います。  少なくとも自動実行は無理です。「全てのデータの編集が終わったよ」というプログラムを走らせるアクションが必要なので。

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

関連するQ&A

  • 確認後、一発入力!!

    A1・C2・D4に入力すると、E列・F列・G列に上から順に表示させるみたいな ことは可能ですか? 1回目  ABCD      EFGH 15          567 2   6 3 4   7 2回目  ABCD      EFGH 13          567 2           3 5 3 4   5 みたいな感じで空白は空白で表示したいのですが、可能でしょうか?? という質問に対し、このマクロを教えていただいたんですが、 Private Sub Worksheet_Change(ByVal Target As Range) Dim myC As String Dim x As Range   If Intersect(Target, Range("A1,C2,D4")) Is Nothing Then Exit Sub   Select Case Target.Address(0, 0)     Case "A1": myC = "E"     Case "C2": myC = "F"     Case "D4": myC = "G"   End Select   If Cells(Rows.Count, myC).End(xlUp).Value = "" Then     Set x = Cells(Rows.Count, myC).End(xlUp)   Else     Set x = Cells(Rows.Count, myC).End(xlUp).Offset(1)   End If   x.Value = Target.Value End Sub 入力用セルがもっとたくさんある為、全て入力後に、確認してから EFGの列に反映させたいのですが、可能でしょうか? わかりずらくスミマセン・・・・・。 ヨロシクおねがいします。

  • 空白セルのカウント方法

    どなたかご存じでしたら回答をお願いします。 【質問】 各列毎に●や★が任意の数がある8行のセルがあります。 各列毎に8行目から上に遡り、●までの間の空白のセルを数える方法が知りたいです。 但し、★も”空白の1つ”として数えます。 【入力】   A  B  C  D  E  F  G ・・・・ 1 ●        ★ 2       ●  ●  3       ★        ● 4             ★ 5              6 7                ● 8                   ● 【結果】  A B C  D E  F G ・・・  7 8  6  6  8  1 0 ※結果の説明 A:●の下には空白が7個。 B:●が無く空白が8個。 C:●の下に★があるが空白とみなして6個。 D:●の下に空白が6個。 E:★があるが空白とみなして8個。 F:●の下には空白が1個 G:●の下には空白が0個 使用するエクセルは2010です。 以上、よろしくお願いします。

  • EXCEL関数 複数セルのデータと1つのセルにまとめたい

    先日アンケートを取りました。 質問に対し、回答は1~5の選択肢のうち、いくつでも選ぶ方式(複数回答)でした。 この回答データをEXCELで入力済みなのですが、ここで問題が発生してます。 EXCELは、 A列が回答者氏名 B,C,D,E,F列が回答(選択肢1~5のいずれか) となっています。 例えば、太郎さんが2,4,5と回答した場合には、 A列:太郎、B:2、C:4、D:5、E:空白、F:空白 になっています。 これを次のようにしたいのですが、何か方法はありますか? A列:太郎、G列:2 4 5

  • 入力された●から●迄の空白をカウントする方法

    どなたかご存じでしたらご回答よろしくお願いします。 【質問】  各列毎に●や▲が任意の数がある8行のセルがあります。  8行目の任意列に●を入力した場合、  そこから上に遡って●までの間の空白のセルを数える方法が知りたいです。  但し、▲も”空白の1つ”として数えます。 【入力】    A  B  C  D  E  F  G …  1 ●  ●         2        ●  ▲ ● ▲   3     ▲ ●       ▲  4                5  6  7   8 ●  ● ●               【結果】  A B C D E F G・・・   6 6 4 0 0 0 0 ※結果の説明 A:8行目の●から上に数えて●迄の空白は6個。 B:8行目の●から上に数えて▲がありその上に空白と●があるが、▲を空白とみなして6個。 C:8行目の●から上に数えて最初の●迄の空白迄は4個。 D:8行目に●は無いため、空白は0個。 E:8行目に●は無いため、空白は0個。 F:8行目に●は無いため、空白は0個。 G:8行目に●は無いため、空白は0個。 使用するエクセルは2010です。 以上、よろしくお願いします。

  • 空白セルのある場合の計算

      A  B  C  D   E  F  G  H 1 (2)     (2)     空     (3) わかりづらいかもしれませんが、 =A1+C1+E1+G1 で、数字の合計を出したいのですが、###のエラーが出ます。 E1の空白セルに数字が入るとエラーはなくなります。 どうしたら空白を0とみなして計算できますか? (空白セルはどうしても空白じゃなきゃなりません) (B列D列F列は計算対象外の数字が入力されてます)

  • (MS-Excel)「入力規則」で「リスト」に空白セルを含めない方法

    (MS-Excel)「入力規則」で「リスト」に空白セルを含めない方法 たとえば、A1,B1,D1,G1は何らかの文字列が入力されていて、C1,E1,F1が空白セルだとします。 「入力規則」の「リスト」で、「元の値」にA1:G1を指定した場合は、空白もリストされてしまいます。 空白を表示させたくないのですが、作業セルに空白以外をリストさせて元の値とする、という方法は使いたくないです。 調べたところ、名前の定義方法で実現できるみたいですが、良く解りませんでした。

  • エクセルで空白セルを寄せたい

    エクセル2002使用です VBAは使わずに関数だけで空白セルがあるセルを詰めて表示したいのですが・・・   A|B|C|D|E|F|G 1 あ い う え お か き 2 ○   ○ ○   ○ の表を   A|B|C|D|E|F|G 1 あ う え か  2 ○ ○ ○ ○ のように表を書き換えたいのです。 1行目には必ず文字が入力されています。 2行目には入力されているセルと空白セルが不定期に入力されています。 2行目のセルが空白ならば、1行目のセルも削除して左へ詰めて 表を転記したいのです。 よろしくお願いします。

  • 文字の置換のソフトを探しています。

     テキストエディター上のことです。 ABCD"a-a" , EFGH="b-b",, ABCD"c-c" , EFGH="d-d",, ABCD"e-e" , EFGH="f-f ",,        ・        ・        ・ という感じで文字が並んでいるときに ABCD"a-a" , EFGH="a-a",, ABCD"c-c" , EFGH="c-c",, ABCD"e-e" , EFGH="e-e",,        ・        ・        ・  のように文字を置換したいのですが、置換する量が多いので、   自動で置換してくれるソフトはないでしょうか?   自分の勝手なイメージですが、   ABCD"から",までの文字を読み取って   EFGH="から",,までに文字を入れてくれるソフトような   ソフトがあればと思います。   もしそのようなソフトをご存知でしたら、教えてください。   よろしくお願いします。

  • 必ず、セル選択順に 数字を表示させるには ?

    必ず、任意のセルの選択順に数字を表示させたいんです。 D列には、 1 ~ 10 が入力されております。 E列は、空白です。 F列のセルを、 任意選択する回数は、2回 か 3回 だけです。 下記例 ( 任意のセルを、 3回選択する場合です ) の、マクロを何卒、ご教授ねがいます。 ------------------------------------------ 実行前 ( F列 の 任意のセル を選択します ) D列  E列  F列 1        とと ←3回目の選択 2        ああ 3        うう 4        いい ←1回目の選択 5        おお 6        ええ 7        はは 8        ふふ 9        ひひ 10       ほほ ←2回目の選択 ↓↓↓↓ 実行後 ( E列に 選択順の数字 が表示される ) D列  E列  F列 1    3    とと ←3回目の選択 2        ああ 3        うう 4    1    いい ←1回目の選択 5        おお 6        ええ 7        はは 8        ふふ 9        ひひ 10   2    ほほ ←2回目の選択

  • 複数セルから特定の文字を検索して、その対象セルを抽出したい

    エクセルで関数、VBAを使用して、下記のようなDATA抽出を行ないたいのですが、どなたか、ご指導いただけないでしょうか。 たとえば、2種のシートが、各々、 <シート1>   列A   列B 行1 A1 ABCD-123 行2 B23 EFGH-456 行3 C456 あいうえお <シート2> 列A 列B 列C  列D  列E 行1 A1 A2 A3 行2 B23 C5 A4 行3 A5 B2 C456 ・・・・・・・となっている場合、 <シート2> の列D  行1 へ "A1"と入力(記載)がある場合、列Eに   ”ABCD-123”と表示(抽出)を行ないたい。 セルには、文字、数字、記号が入ります。 よろしくお願い致します。

専門家に質問してみよう