VBA如何vlookup / index匹配如果目标单元格为空,则取另一个单元格

时间:2018-04-20 05:35:36

标签: excel vba vlookup

我正在尝试通过用户excel文件的索引匹配将日期值复制到我的工作表。 在我的工作表中 - 仅1个日期列"计划日期" 在用户表中 - 有2个日期列"操作更新日期"和"行动计划日期" (他们彼此相邻)

如果用户表单"操作更新日期"我如何表达索引匹配/ vlookup?是空白,采取"行动计划日期"否则(就像在SQL中的IFNULL()函数一样,如果表达式是NULL,我可以返回一个替代值)?

下面我的实际代码是索引匹配部分,只能正常匹配"操作更新日期"列从用户工作表到我的工作表"计划日期":

 table1 = mysheet.Sheets(1).Range("D3:D10")  'Style Number column from mysheet
 table2 = user.Sheets(i).Range("I3:DZ7")  ' DataRange of user template being copied
 table3 = user.Sheets(i).Range("I3:I7")   ' style number of user template
 table4 = user.Sheets(i).Range("I1:DZ1")  ' customer template column header range 
 Style_Row = mysheet.Sheets(1).Range("G3").Row
 Style_Clm = mysheet.Sheets(1).Range("G3").Column

 For Each cl In table1  'index match find if style number is matched between user template and mysheet, copy the data based on column header in table 

 On Error Resume Next
 myseeht.Sheets(1).Cells(Style_Row, Style_Clm) =Application.WorksheetFunction.Index(table2, Application.WorksheetFunction.Match(cl, table3, 0), Application.WorksheetFunction.Match("Action updated date", table4, 0))  ' Plan Date

Style_Row = Style_Row + 1
Next cl

0 个答案:

没有答案