• ベストアンサー

別シートからの氏名の日付を入力

watabe007の回答

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.9

>Worksheets("Sheet1").Range("範囲追加")に訂正したのですが。 >dateR = IIf(c.Row < 9, 2, 9)の数値を変え努力してますがうまくいきません。 すみません、範囲追加を想定していませんでした。 私の書いたコードでは修正が面倒なのでrealbeatinさんのコードを一部お借りして書き直してみました。 Sub Test2()   Dim c As Range, i As Long, myR As Variant, myC As Long   '日付の書かれた範囲を上からループ   For Each c In Worksheets("Sheet1").Range("C2:E2,C9:E9,C16:E16")     With Worksheets("Sheet2")       'Cは日付の書かれたセル       For i = 2 To 6         '日付の下に書かれた名前をシート2のB列より検索         myR = Application.Match(c.Offset(i).Value, .Columns(2), 0)         If IsError(myR) Then           'B列に名前が無ければ新たに登録           myR = .Cells(Rows.Count, "B").End(xlUp).Row + 1           .Cells(myR, "B").Value = c.Offset(i).Value         End If         '名前の行の右端の列を検索         myC = .Cells(myR, Columns.Count).End(xlToLeft).Column + 1         '名前の行の右端に日付を転記         .Cells(myR, myC).Value = c.Value       Next     End With   Next End Sub

kuma0220
質問者

お礼

補足の回答も含めて有難うございます。新コード入力で可能になりました。 説明も記述していただき有難うございます。非常に助かり尚勉強になりました。今後も応用していきたいと思います。

関連するQ&A

  • テキスト氏名、日付とExcel表の連動

    ユーザーフォームのテキスト氏名、日付1、日付2を入力したらExcel表のマッチした氏名行の日付を○印で入力するようなVBAのコードがありますでしょうか。どなたかご教授のほどよろしくお願いします。

  • シート1の氏名日付がした記号をシート2に反映

    シート1のマークを入力コマンドボタンでシート2に氏名、日付マッチしたセルに画像のように入力したいのですがコードがお解りになる方どうかよろしくお願いします。

  • 別シートへの飛ばし方

    毎月、売上内容をエクセルで表に入力しています。 元表にはバラバラに日付を入力していますが、別のシートに月毎にまとめたいんですが、 元表に入力すれば、自動に月毎のシートに内容が反映される関数、マクロを教えて下さい。

  • Excelで氏名を入れ替えながら印刷をしたい。

    仕事で使っている表があるのですが、毎回印刷に手間取るので知恵をお貸し下さい。 Sheet1に名簿(入力表)があり、Sheet2が請求書になっています。 請求書は1人分ずつ出すようにしておりSheet2の氏名欄を書き換えればその人の請求書が完成するようになっていますが、 名前を何度も入れ替えながら印刷するとかなりの時間かかってしまいます。 名簿から請求書の氏名欄に氏名を順番にコピーして印刷をしていき、 氏名欄が空白だった場合には印刷を止めるような方法は無いものでしょうか? 環境はWindowsXP(SP2) Excel2000です。 よろしくお願いします。

  • 別シートを参照しNoを記入で氏名を返す

    大変お世話になります。 以下の様な表が別シートで作成してあります。   No 組    氏名   1 赤    太郎   2 ピンク  花子 そこで別のシートにNo2をインプットする事により”花子”という文字を自動入力させたい。 必要理由は表が大きく都度氏名を記入するのが面倒なのでNoで記入させたいのです。 宜しくお願いします。(EXCELの関数が良く解りませんので宜しくお願いします。)

  • 入力されたセルのみを別シートにリンク

    EXCEL2Kです。入門者ですのでご指導下さい。あるシートに日付け毎に入力表(一部リスト選択)があります。毎日入力はありませんので、入力されたセルのみ(空欄は除外)別シートにリンクさせたいのですが、可能でしょうか?添付図のイメージです。宜しくお願いします。

  • エクセルの日付

    シート1に表を作り日付の欄に入力すると、シート2の日付の欄にも自動的に同じ日付が入力されるようにするにはどうしたらよいのでしょうか?教えてください。よろしくお願いします。

  • Excel:日付で選択するシートを選ぶ方法

    今仕事で作りながら質問しています。 日報みたいなものを作っており、 1、2、3…31という感じで、31個のシートに名前をつけ、 別シートから日付によってそのシートの内容を引っ張るような表を作りたいのですが、 シートの選択をどのようにすればいいのか迷っています。 ='1'!A1 の'1'の部分が日付により'2'になったり'3'になったり することはできないのでしょうか? できれば、関数で処理したいのですが、 VBAでも構いません。 すみませんが、よろしくお願い致します。

  • エクセルで参照する別シート名をセルに入力したい

    エクセルで参照する別シート名をセルに入力したいです。 (1) sheet2とsheet3にそれぞれA1:B10の表があります。    A列には氏名がB列には数値が入力してあります。    (同じ表で月度が違います。) (2) vlookup関数を使ってsheet1のA列に氏名を入力して対応する数値を    B列に求めたいです。 (3) この時、sheet1のC1に「sheet2」「sheet3」と入力することで    参照するシートを変えたいのですが、方法が解りません。 そもそも可能かどうかも解らず、悩んでいます。 ご教授お願いいたします。   

  • 日付を入れたら該当するセルに文字を入力する方法

    一度調べたのですが、思う通りのものが見つからなかったので 質問させてください。 判りにくいかも知れないのですが、           1月        2月   ・・・・・ 日付A|日付B|1234567・・・・・・29 30| 31 1 2・・・・・・28| という表があります。 その日付の欄に値を入力したら、自動で該当する月日の欄に 『1』と入力する方法は無いでしょうか? 例えば、             1月        2月   ・・・・・ 日付A|日付B|1234567・・・・・・29 30 31 | 1 2・・・・・・28|  1/3  1/30      1111111111 1 1 という感じです。 よろしくお願いします。