使用vlookup保持文本格式化

时间:2014-08-18 08:43:12

标签: excel excel-vba vba

有没有办法在excel中使用vlookup并保持文本格式化?

在这种情况下,我想用vlookup复制到另一个工作表的某些行使用不同的颜色进行格式化。我想保留这些颜色。

1 个答案:

答案 0 :(得分:0)

正如Rory在评论中指出的那样,用VLOOKUP实现它是不可能的。但是,您可以使用.Find.Copy方法,但您可能会收到所需的效果。下面我发布了示例代码。您也可以根据需要使用复制/粘贴。

Sub paste_formats()

Dim Find As String

On Error GoTo blad:
Find = Range("C3:C19").Find(Range("a1").Value).Address

Range(Find).Copy Destination:=Range("B2")

Exit Sub
blad:
If Err.Number = 91 Then: MsgBox ("Value was not found.") 'if value was not found it will pop up a message.

End Sub

如果要复制行,则只需稍微更改一下代码:

Find = Range("C3:C19").Find(Range("a1").Value).Row

Rows(Find & ":" & Find).Copy Destination:=Rows(23)

如果您只想复制格式,则应使用copy / pastespecial xlpasteformats。