[[20151126154036]] 『セルの管理NOを参照し、別シートに転記する』(みや) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『セルの管理NOを参照し、別シートに転記する』(みや)

シート1に当日のデータ、シート2に前日データが記載されています。
シート1、2共に日々更新しています。
行数は日々変化します。
列はA〜I列まで使用しており、シート1、2共に構成は同じです。

シート1(当日)のI列にシート2(前日)のI列の記載を転記したいです。
転記するのはシート2のE列の管理NOがシート1のE列と同じ場合にシート2のI列に転記する方法を教えてください。

シート2のE2セルにAAA111、I2セルに新規と記載されていて
シート1のE5セルにAAA111が記載されていたらI2セルに新規(シート2のI2セルをコピペする)と転記したいです。

< 使用 Excel:Excel2010、使用 OS:Windows7 >


 VLOOKUP関数を使ってはどうか?

 ところで
 >シート1のE5セルにAAA111が記載されていたらI2セルに
 は
 >シート1のE5セルにAAA111が記載されていたらI5セルに
 だろうか?
(ねむねむ) 2015/11/26(木) 16:05

(ねむねむさん)
そうです!書き間違えました!
VLOOKUPでしていたのですが、エラー(#N/A)が出るので出来ればマクロでエラーが出ない方法でやりたいと思います。
(みや) 2015/11/26(木) 16:17

 IFERRORを使えばよいかと。
 =IFERROR(VLOOKUP(・・・),"")
(bi) 2015/11/26(木) 16:24

(biさん)
転記する前段階でマクロ(.VALUE)でシート1をシート2へコピペしているのでエラーメッセージ(#N/A)が消えません。これを転記ハンドで消すのが面倒なので方法がないかなぁ〜と。。。
(みや) 2015/11/26(木) 16:48

 素人が作ったマクロですが、参考になれば・・・

 Sub 転記()

     Dim LastRow As Long, r As Long
     Dim MyRange As Range

     LastRow = Sheets("Sheet2").Cells(Rows.Count, 5).End(xlUp).Row

     For r = 2 To LastRow
         With Sheets("Sheet1")
              Set MyRange = .Columns("E").Find(what:=Sheets("Sheet2").Cells(r, 5).Value, lookat:=xlWhole)
              If Not MyRange Is Nothing Then MyRange.Offset(, 4).Value = Sheets("Sheet2").Cells(r, 9).Value
         End With
     Next

 End Sub
(se_9) 2015/11/26(木) 17:05

se_9さん

ありがとうございます!
バッチリでした!

(みや) 2015/11/26(木) 19:17


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.