0

I have a report that is sent to me daily that only supplies IP addresses and would like to create a macro that would look up the address to host conversion from another table (external to the excel sheet report). So that when its executed, the IP address would be replaced with the actual hostname.

Date/Time Detected    Source IP Address       Destination IP Address
6/19/2013 15:46       172.16.16.40            172.16.4.10
6/19/2013 15:46       172.16.16.40             *
6/19/2013 15:02       172.16.16.40             *
6/19/2013 15:02       172.16.16.40             *
6/19/2013 15:02       172.16.16.40             *
6/19/2013 15:02       172.16.16.40             *

In this example, I would have a table that would have an IP address and Host address (from a dns export table), that I would like to do a replace Source IP with it's hostname from my daily reports. The dns table is static, the daily reports would be populated with a replace IP with hostname from the static dns table.

4

1 回答 1

5

我创建了一个非常简单的示例来说明如何执行此操作:

在此处输入图像描述

现在(为了更容易制作图片)DNStable 是同一工作表中的命名范围(绿色背景) - 但它可能在另一个工作表/工作簿中。该VLOOKUP函数尝试FALSE在第一个参数(“源 IP 地址”)和该表中的第一列之间找到完全匹配(第四个参数表示“完全匹配”);如果找到或未找到,它将返回第 2 列中的值#N/A

当 DNS 查找是不同的文件时,要执行相同的操作,请使用以下公式:

=VLOOKUP(B2,DNSlookup.xlsx!DNStable,2, FALSE)

DNSlookup.xlsx文件包含一个命名范围的地方DNStable和以前一样: 在此处输入图像描述

只要该文件在您的 Excel 副本中打开,就可以了 - 它们不必在同一个文件中。现在将此公式复制到单元格 D2 中,并将其一直向下拖动。很酷的技巧:如果您选择单元格,然后双击右下角的小“拖动框”,它将自动一直向下填充(与紧靠其左侧的单元格一样多的单元格)。试试看!

注意 - 如果您现在关闭 DNS 查找文件和此文件,然后再次打开它,您将收到有关“更新外部链接”的警告。此时,您将看到公式已更改为以下内容:

=VLOOKUP(B2,'X:\code\DNSlookup.xlsx'!DNStable,2, FALSE)

如您所见,它创建了一个指向保存另一个文件的位置的链接 - 但它也保留了最后一次成功查找的值。

这应该对你有用。

于 2013-06-20T14:47:21.783 回答