我有一长串名称,需要用引号引起来(可以是双引号或单引号),大约有 8,000 个。我将它们保存在 Excel 中,没有任何引号,我可以复制所有名称并粘贴它们,没有问题,但仍然没有引号。我一直在寻找一个 Excel 公式来为每行中的名称添加引号,但我没有运气。我还尝试了一些巧妙的查找和替换技术,但也没有奏效。我正在寻找的格式是这样的:
“艾伦”或“艾伦”
其中任何一个都可以。我需要这个,以便我可以将信息存储到数据库中。任何帮助是极大的赞赏。谢谢
PS:
我在网上发现其他人需要做与我相同的事情,这个解决方案对他们有用,但我不知道如何处理它:
您可以使用范围来修复它 变量(例如 myCell),然后 用它来迭代“选择” 范围对象的集合,就像这样
Sub AddQuote()
Dim myCell As Range
For Each myCell In Selection
If myCell.Value <> "" Then
myCell.Value = Chr(34) & myCell.Value
End If
Next myCell
End Sub
另一个对其他人也有效的解决方案是:
Sub OneUglyExport()
Dim FileToSave, c As Range, OneBigOleString As String
FileToSave = Application.GetSaveAsFilename
Open FileToSave For Output As #1
For Each c In Selection
If Len(c.Text) <> 0 Then _
OneBigOleString = OneBigOleString & ", " & Chr(34) & Trim(c.Text) & Chr(34)
Next
Print #1, Mid(OneBigOleString, 3, Len(OneBigOleString))
Close #1
End Sub
= """" & A1 & """"
Public Function Enquote(cell As Range, Optional quoteCharacter As String = """") As Variant
Enquote = quoteCharacter & cell.value & quoteCharacter
End Function
=OfficePersonal.xls!Enquote(A1)
=OfficePersonal.xls!Enquote(A1, "'")
要获得永久带引号的字符串,您必须复制公式值并粘贴特殊值。
更简单的步骤:
假设您的数据位于 A 列,请向 B 列添加公式
="'" & A1 & "'"
然后将公式复制下来。如果您现在保存到 CSV,您应该会获得带引号的值。如果您需要将其保留为 Excel 格式,请复制 B 列,然后粘贴值以删除公式。
为什么不为需要引用的单元格使用自定义格式?
如果您为单元格列设置自定义格式,则所有值都将采用该格式。
对于数字...比如邮政编码...就是这个“#” 对于字符串文本,它将是这个“@”
将文件保存为 csv 格式,它将根据需要将所有引号包裹在单元格数据中。
或选择范围并设置单元格格式 > 自定义“@”
如果将 Excel 文件另存为 CSV 格式文件,您可能会发现结果很方便插入数据库,尽管我不确定所有字段都会被引用。