• ベストアンサー

Excel セル入力データをシート名に反映させるには?

大変お世話になります。 Excelにて、勤怠表を作成しているのですが、 休日表を作り、そのシート名を「2007年度休日」としています。 そして勤怠表のシート名「山田」(各個人名を入力)の各シートに リンクさせているのですが、シート「2007年度休日」の セルA2 部分に 2007 と入力しているデータを反映させて セルA2を書き換えるごとに シート名も一緒に変更出来ればと思うのですが 出来ますでしょうか? 分かる方、お教えください。宜しくお願い致します。

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

  • ベストアンサー
  • suz83238
  • ベストアンサー率30% (197/656)
回答No.1

質問がよく分からないんですが、A2に2007と入れたとき、シート名が「2007年度休日」になるってことでいいんですか? それなら、その入力するシートのモジュールに下記を入れればA2に入力すれば自動でシート名が変わります。 「どこに書いたら」っていうのはすいませんが「VBA シートモジュール」で検索して下さい。 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$2" Then ActiveSheet.Name = Range("A2").Value & "年度休日" End Sub

guchi_yama
質問者

お礼

ご回答どうもありがとうございました。 出来るのか出来ないのかだけでも知りたかったのですが 無理なようですね; 再度新たに質問をしてみます。 本当にどうもありがとうございました。

guchi_yama
質問者

補足

早速のご回答ありがとうございます。 説明不足で申し訳ありません。 ご回答通り、A2に2007と入れたとき、シート名が「2007年度休日」になるという解釈でOKです。 おかげ様で無事、シート名を変更させることが出来ました。 もし宜しければもう1点ご回答頂きたいのですが、 シート名「2007年度休日」のA2に2007と入れたときに、 別のシート名も変更することは可能でしょうか? 実は、休日表が正社員用の「正 2007年休日」と 契約社員用の「契 2007年休日」の2シートありまして、 契約社員用のほうは「正 2007年休日」のA2をリンクさせているので シート自体のA2は「正 ~」のシートのA2の年数を 2007と書き換えると「契 ~」のシートのA2も変わるのですが、 シート名は「契 2007年休日」のシート上のA2をダブルクリックして 再計算させないと、シート名が変わりません。 これを、「正 ~」のシートのA2を書き換えた時点で 「契 ~」のシート名も変えることは出来ますか? リンクデータを反映して別のシートも変わるものと思っていたもので 2度手間をおかけして大変申し訳ありませんが、 ご回答頂ければ幸いです。 宜しくお願い致します。

関連するQ&A

  • セルのデータをマクロでシート名に反映させる方法は?

    大変お世話になります。 Excelのセルに入力したデータをシート名に反映させたいのですが、 前回、QNo.3861407にて質問させてもらった時の回答は、 セルに入力するシートでしか反映されなかったのです。 それを、Sheet1に記載したデータをSheet2のシート名にも 反映させることは出来ますでしょうか? 下記式のActiveSheet.Name の部分をSheets(Sheet2).Select としてみたり、 色々調べて試してみたのですがうまくいきません。 前回にご回答頂いたマクロは下記の式です。 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$2" Then ActiveSheet.Name = Range("A2").Value & "年度休日" End Sub 上記式だと、 そのシート自体のA2に入力してエンターを押せば、 シート名も反映されて変わるのですが、 変更したいシートが2枚ある為、 その2枚を同時に変更する方法を知りたいのです。 詳しく説明すると、 勤怠表を作成する際、 別シートに休日カレンダーを作り、 勤怠表に休日が反映されるようにしているのですが、 休日カレンダーが正社員用と契約社員用の2枚あり、 その休日カレンダーの一方のシート(シート名「正 2007年度休日」)の A2に2007と入れたときに、 もう一方のシート(シート名「契 2007年度休日」)も一緒に 変更することは可能でしょうか? 契約社員用のほうは「正 ~」のA2をリンクさせて 「契 ~」のA2に2007と年数が入るようにしているので A2セルは「正 ~」のシートのA2の年数を 2007と書き換えると「契 ~」のシートのA2も変わるのですが、 上記のマクロだと、「契 2007年休日」のシート上のA2をダブルクリックして 再計算させないと、「契 ~」のシート名が変わりません。 これを、「正 ~」のシートのA2を書き換えた時点で 「契 ~」のシート名も変えることは出来ますでしょうか? 分かる方、お教え下さい。宜しくお願い致します。

  • エクセルでシート名をセルに反映させる方法

    エクセルでシート名をセルに反映させる方法 いつも、ここでいろいろ助けられています。 セルにシート名を入れる方法はございますでしょうか。 どういうことかと言うと、同じフォームの表を、月別に作成していますので、毎回、その月の月度をシート内の月度を入力する位置および、シート名の欄に2回入力しています。 これを1回にしたく質問させていただきました。 エクセルのバージョンは「エクセル2007」です どなたかご存知の方よろしくお願いいたします。

  • エクセルでセルに入力した数字をSheetに反映できますか

    現在、メンテナンス表をエクセルで作成しています。 数が膨大で手が追いついていない状態です。 そこで、セルに入力すればそのデータが別のSheetに反映できればかなり短縮できるので、そのような方法があれば教えてください。 例えば、A1に「123」と入力するとSheetの名前が「123」のSheetの選択したセルに反映される。ということがやりたい事です。 400近いSheetがあり、毎日全部ではありませんが、かなりのデータを入力しなければいけません。 どうかよろしくお願いします。

  • エクセル関数 シート名をセルに反映させたい

    シート名をセルに反映させたいのですが,以下のようなことができるでしょうか。 =CELL("filename",A1)を使えば,シート名を反映させられるようであることは,ネットで調べて分かったのですが,たとえば,シート2を作成した時に,シート1のA2のセルのところに,自動でシート2の名前を入力できるような関数はありますか?その後,シート3を作成した時に,同様にシート1のA3のところに自動で入力したいのですが,そのようなことが可能でしょうか。 説明が下手で申し訳ないのですが…

  • エクセルで選んだセルによって文章を反映させる

    たびたびお世話になります。 エクセルでシート1にA,B,C,Dの4個のセルがあり このどれかに会社名又は個人名が入ります。 (必ず一つです) 毎回コピペでシート2のEのセルに反映させてますが どれかに入力したら自動的にシート2に反映させる方法は ないでしょうか? おわかりになる方ご教授下さい。

  • 【エクセル】シート間で反映させたいのですが、結合されたセルがあるため困っています。

    お世話になります。 あまりエクセルに詳しくないのですが、データをエクセルで表にまとめなくてはならなくなりました。 データは複数シートでまとめています。 Sheet1にすべてのもととなる名簿をまとめ、このシートを更新すると他のシートにも自動的に反映するようにしたいと考えています。 その方法として、「=Sheet1!A1」などと入力して反映させようとしていたのですが、複数あるシートのうち何枚かは反映させたい部分がセルの結合されており、上記のようにするとひとつ飛ばしに反映されてしまいます。 例: 【sheet1】 1 Aさん 2 Bさん 3 Cさん 4 Dさん 5 Eさん 6 Fさん 【sheet2】 1   Aさん 2 3   Cさん 4 5   Eさん 6 わかりにくいですが、このような感じです。 sheet1を無理やりセルの結合させることも考えたのですが、私以外の者も表を扱うこととなるためなるべくシンプルにしたいと思い断念しました…。 セルの結合はそのままで、Sheet1に入力した内容を他のシートに反映させる方法はありますでしょうか? 似たような質問も検索してみたのですが、関数?など複雑なものが多く、よく理解できませんでした。(平均値や標準偏差など簡単な計算はしたことがあるのですが、複雑なものは未経験です。) わがままを言って申し訳ございません。 勉強不足でありご迷惑おかけしますが、何卒よろしくお願いいたします。

  • エクセル・特定のセルの入力をシート名に反映する

    題名のとおりですが、特定のセルの入力内容をシート名に反映することはできませんか? マクロでできることは知っています。 社内文書にマクロをつけると嫌がる人がいます(理由は不明……) できれば、関数でなんとかならないでしょうか? 逆にシート名をセルに反映する関数&マクロは分かるのですが セルの内容をシート名に反映する関数、というのが見つかりません どなたか教えてください。

  • 【エクセル】複数シートの同一セルの内容を別のシートに自動反映させたい

    エクセルについて教えてください。エクセル初心者なので、説明がうまくできないのですが、やりたいことを汲み取っていただけると助かります。 現在複数シートのシートの同一セル上に数字が記入されています。 新たに別シートを作成し、その表に数字が自動入力されるように したいのですが、何か方法はありますでしょうか。 例)(1)シート1~12のA10セルに4月-3月までの支出合計が    記入されている。   (2)別シートに縦罫4月-3月、横罫支出合計とした表を作成。   この表に月ごとの支出合計が自動的に反映されるように   したいのですが、今はセル一つずつに"=シート1のセルA10"を   入力しています。   この方法以外に便利な方法があったら教えてください。   説明下手で申し訳ございませんが、宜しくお願い致します。

  • エクセルで作成したデータシートがあるのですが、セルに入力してある数式に

    エクセルで作成したデータシートがあるのですが、セルに入力してある数式によって出された値を別のエクセルフォルダ中のセルに反映させることは可能でしょうか?よろしくお願いします。

  • 【エクセル】シート1の複数セルをシート2に反映

    エクセルについて、教えて頂きたいです。 まず添付のエクセル画像を見て頂けますでしょうか。 <質問内容> まず添付画像は左側の「シート1」と、右側の「シート2」の2つから成っています。 シート1のA2セルは、ご覧の通り入力規則による「リスト」になっておりまして、 「A」「B」「C」の3つからプルダウン選択できるようになっています。 この状態でやりたいことがあるのですが、 例えばここで、 シート1のプルダウンで「B」を選択したとき、 シート2の「B」の行「B3、C3、D3セル」を自動的に参照して、 シート1の「B2、C2、D2セル」に「200 600 1,100」の数字が反映される方法を、 教えて頂けませんでしょうか。 ぜひとも宜しくお願いします(m_ _m)  ※ちなみに、シート名を「A」「B」「C」と記載してINDIRECT関数で反映させる方法は   存じておりますが、シートを1つに収めたいと思っております。

専門家に質問してみよう