gpt4 book ai didi

excel - 如何让Excel忽略单元格开头的撇号

转载 作者:行者123 更新时间:2023-12-01 18:56:24 25 4
gpt4 key购买 nike

我正在编写一个工具,用于将简单数据库与 Excel 工作表同步。数据库表中的每一项对应于工作表中的一行。我使用 C# 和 Excel interop com 接口(interface)将 Excel 工作表读入工具中,然后在同步后比较项目的值(即 Excel 工作表中的一列),以确保它们相等。

昨天我发现一个比较不正确的案例:

"'<MedalTitle>' Medal - <MedalDescription>"
"<MedalTitle>' Medal - <MedalDescription>"

第二个是我从 Excel 中读入的,正如您所看到的,它跳过了第一个撇号。有没有办法告诉 Excel 将单元格视为文本(不,仅设置单元格的格式没有帮助)?

我什至尝试在 VBA 中复制单元格的值 ( 'hello' ),如下所示:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Target.Offset(1, 0).Value = Target.Worksheet.Range("b2").Value
Target.Offset(2, 0).Value = Target.Worksheet.Range("b2").Formula
Target.Offset(3, 0).Formula = Target.Worksheet.Range("b2").Formula
Target.Offset(4, 0).Formula = Target.Worksheet.Range("b2").Value
End Sub

结果是目标单元格的值始终是hello'

如果没有办法,我就不得不做一些丑陋的事情

if (dbitem.value[0] == ''' )
{
// stuff
}
else
{
// regular comparison
}

最佳答案

恐怕撇号'对于Excel来说是一个特殊字符,当它作为您找到的单元格中的第一个字符出现时。它告诉 Excel 将字符串的其余部分视为文本,以便您可以在单元格中输入类似 '34.2 的内容,它会将其视为字符串而不是数字(用于格式化和等等)。

我建议执行与您建议类似的操作,不同之处在于您将其放入 Excel 时,检查第一个字符,并添加一个额外的 '(如果已有)。

或者,您可以在所有值前面加上撇号 - 如果您希望它们全部作为文本。这样您就不需要额外的第一个字符检查。

关于excel - 如何让Excel忽略单元格开头的撇号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1333468/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com