excel - 需要 Excel VBA 宏根据特定字符将一个单元格划分为多个单元格

标签 excel vba

我有一个邮件列表,其中包含大学招股说明书的姓名和地址,这些信息取自 Excel 文档中的 .tab 文件。但地址包含在单个单元格内,每行由回车符分隔。

我真的需要一个可以运行的宏,它将不同的部分分成不同的单元格。我基本上知道结构,但不知道VBA的功能。

它需要扫描直到出现回车符,将前面的数据减去回车符放入一个新单元格中,然后继续扫描,直到单元格中没有剩余字符,因为末尾没有回车符。

这可能吗?

最佳答案

以下是 VBA 宏的代码:

Dim rngSource As Range
Dim rngDestination As Range

Set rngSource = Sheet1.Range("A1:A5") ' or wherever your list is
Set rngDestination = Sheet1.Range("C1") ' parsed data will be placed here

rngSource.TextToColumns _
    Destination:=rngDestination , _
    DataType:=xlDelimited, _
    Other:=True, _
    OtherChar:=vbLf ' This is where you define your delimiter character

其中 vbLfChr(10) 相同,假设这是您的分隔符。根据您对回车符的风格,您可能需要使用 vbCr(或等效的 Chr(13))。

请注意,@Jon Egerton 的非宏观方法效果很好。但是,如果需要多次执行,我往往会对所有的单击、选择、键入、复制、特殊粘贴、粘贴到错误的位置以及必须重新开始等感到厌倦。我发现 VBA 宏非常有用更可重复使用。我想这是一个品味问题。

关于excel - 需要 Excel VBA 宏根据特定字符将一个单元格划分为多个单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6625494/

相关文章:

excel - VBA 中的连续单元格值

sql-server - 在 Visual Studio 上使用 SSIS ETL 自动调整列宽

vba - 比较两列 VBA 宏时 Excel 崩溃

vba - 另一种代替 do-until 循环使代码执行速度更快的方法

vba - 如何在VBA中找到除行有特殊词的最小值行

excel - 如何检测用户是否选择取消InputBox VBA Excel

excel - 锁定 Excel 电子表格

excel - 对于列中的每个空白单元格,运行自动填充宏

excel - 说运行时错误 1004 无法设置数据透视字段类的方向属性

excel - Matlab:默认打开文件 'outside Matlab'