在Microsoft Excel中批量编辑单元格

我需要在Microsoft Excel中编辑大量的单元格,我不知道要实现我想要的最好的方法是什么。

基本上,我有一个这样的成千上万的ID列表:

503kekd23k0dLY4_ ytp-4r30=-340rR_ HdgfkER4ww=_4--3 =4tR_Ee4we403Prr 

我需要能够添加一个“UC_”的前缀到这些单元格中的每一个,使单元格如下所示:

 UC_503kekd23k0dLY4_ UC_ytp-4r30=-340rR_ UC_HdgfkER4ww=_4--3 UC_=4tR_Ee4we403Prr 

我需要运行某种forms的macros才能完成这个最有可能的,但我不知道如何做到这一点。 如果你能帮忙,让我知道。

在Excel 2013及更高版本中,您可以使用Flash Fill。

手动input第一个值。 select该单元格,然后单击数据function区上的“Flash填充”。

之前

之前

后

您可以使用“帮助程序”列手动执行此操作,或select单元格并运行以下命令:

 Sub AddPrefix() Dim r As Range For Each r In Selection r.Value = "UC_" & r.Value Next r End Sub 

如果您的ID在单元格A1 ,则可以在单元格B1使用此公式

="UC_"&A1

然后拖下那个公式。

“&”符号基本上就像文字的加号。 你把UC_放在双引号中来表示它是一个string,然后只是将它“添加”到id中。

如果你想用VBA来做到这一点,你可以用一行代码来完成:

 Range("C6:C9").Formula = application.transpose(split("UC_" & join(application.transpose(range("A6:A9")),"|UC_"),"|")) 

这将结果张贴到列C,但您可以直接张贴到列A,如果您愿意。 我使用A6:A9进行testing,确保更新两个范围。

理论是使用| UC_作为分隔符join(application.transpose(range("A6:A9")),"|UC_")来连接string。 我添加了pipe道字符| 所以我可以很容易地把它分开,如果你有一个pipe道在你的数据改变pipe没有使用的字符(通过ASCII表中有很多没有显示字符,你可以使用或在这种情况下,你甚至可以使用vblf )。 一旦join,然后使用pipe道(或任何你select的字符)将其分开,然后回到一个范围内。

你需要在开始时join| UC_,因为join不会在开始时join,我在这里做了: "UC_" & join(applic........

我们使用application.transpose将数组更改为可以填充到某个范围内的数组,一个数组通常会跨越,您希望它下降。 请注意,如果将来您正在使用这个function,则需要跨实际需要双列转置的列。