在Excel中使用CONCATENATE

我目前正在合并两个数据库的工作过程中,我正在通过使用Excel生成我的INSERT语句。 我使用Excel的原因是因为我有超过1500多条logging,我不想写这么多的INSERT语句。 我会给你一些关于我的设置的背景:

在这里输入图像描述

正如你所看到的,我在上面的屏幕截图中设置了我的INSERT语句。 一旦完成,它会看起来像这样:

INSERT INTO "database name"("columns") VALUES("values") 

在我上面的屏幕截图所描述的行下方,我有大约1500+行,有50列以上的地方。 正如你所看到的,我除了INSERT语句的值部分外,都已经设置好了。 为了设置这个,我使用CONCATENATE从我的第一行抓取所有的值来完成我的第一个插入语句。 这是我遇到一些麻烦的地方。

在这里输入图像说明

为了使我的INSERT语句正常工作,我需要使用以下格式的单元格值:

“00064”,“PPMeetME”,“testing”,“testing”等。 但是,如果你看上面的红色圈出来的截图,我不能把数据限制在这种格式。 我尝试了各种不同的angular色位置,我不确定它是否能够完成,但有什么方法可以设置我的CONCATENATE声明,使其看起来像我刚刚提到的?

(例如:“00064”,“PPMeetMe”,“00001”,“testing”而不是“00064,PPMeetMe,00001,testing”)

请让我知道,如果有什么不清楚,我会尝试进一步澄清。 任何帮助是极大的赞赏。

谢谢!

戴夫

有两种方法可以在Excel中执行串联。 您可以使用连接公式,也可以在要连接的每个值之间使用& 。 由于您需要在您的VALUE条款中包含双引号,因此可以使用formula =Char(34)返回双引号。 你可以做:

 =char(34) & A1 & char(34) & "," & char(34) & A2 & char(34) & "," & char(34) & A3 ... & char(34) 

要么

 =Concatenate(char(34), A1, Char(34), ",", char(34), A2, ...char(34)) 

这可能会变得有点难看,你可能要考虑把整个string","放在一个单独的单元格中。 把它放在一个单元格(例如IV1)中: =char(34) & "," & char(34)然后你的连接公式看起来像:

 =char(34) & A1 & IV1 & A2 & IV1 & A3 & ... & char(34) 

要么

 =Concatenate(char(34), A1, IV1, A2, IV2, A3, IV3, A4.... ,char(34))