Access导出中的Excel单元格看起来是空的但不是(= isblank = FALSE)

时间:2017-08-17 06:40:30

标签: excel excel-vba ms-access export-to-excel is-empty vba

我的问题是Excel电子表格(从Access导出为.xls)的单元格看起来是空的,但不是。这搞砸了我的计算和导航快捷方式。

单元格中没有公式或内容(已在此主题上发布的答案不能解决我的问题)。我附上了我的问题图片(见下)

故障排除显示:

  • 如果我测试这些细胞,例如=isblank(a1) FALSE

  • 根据=LEN(a1)

  • ,单元格长度为0
  • 如果我尝试'去(特别)突出显示“空白”(或任何其他特殊组合,如公式/文本,数字等),它将不会突出显示这些空白的单元格

  • 如果我过滤列,我可以从过滤器列表中选择这些非空的“空白”(这是识别我到目前为止找到的这些棘手单元格的唯一方法) -

所以我的专栏在某些单元格中有条目,“空白”非空单元格。我只想要带有条目的单元格,其余的我需要清除。这也令人烦恼地意味着跳到下一个空或非空单元格的快捷方式不起作用(它全部读作非空白) - 使得导航大数据集变得非常痛苦。

一旦我点击了一个单独的'非空'空白单元格&按Enter键,这似乎清除了单元格内容('=isblank'公式,它们说“FALSE”现在切换为“TRUE”) - 虽然这在单个大型数据集中修复单个单元格是不可行的。

任何人都可以帮忙吗?!

我找到了两个解决这个问题的基本解决方法,但我真的很想知道如何解决这个问题。为什么会发生这种情况如何在将来避免它。

解决方法1  在Excel中,过滤列,仅显示“空白”,然后突出显示已过滤的列&按删除。取消过滤清单&问题解决了。 解决方法2  从'file.xlsx'&中保存excel电子表格保存为'.csv'。 关闭它,打开csv&似乎非空的空白单元格是固定的,显示=isblank= TRUE&现在可以使用[CNTL箭头键]快捷键跳过。

这太令人沮丧了我没有看到任何类似的问题,也没有回答为什么会这样?

为什么会这样?&还有其他任何修复方法吗? 谢谢蜂巢! excel sheet shows non-blank empty cells - working

2 个答案:

答案 0 :(得分:0)

有时将ctrl + up / down停在数据集的边缘是很好的,有时它不会停止;这是我用来清除所选范围"空白"什么时候没有的细胞:

'clears cells with error or empty string values
Public Sub clearJunk()
    Dim scrn As Boolean: scrn = Application.ScreenUpdating: Application.ScreenUpdating = False

    Dim i As Long, rowCount As Long, FirstRow As Long
    Dim col As Range

    rowCount = Selection.Columns(1).Cells.count
    FirstRow = Selection.Cells(1).Row - 1
    For Each col In Selection.Columns
        For i = 1 To rowCount
            If IsEmpty(col.Cells(i)) Then i = col.Cells(i).End(xlDown).Row - FirstRow
            If i > rowCount Then Exit For
            If IsError(col.Cells(i).Value) Then
                col.Cells(i).ClearContents
            ElseIf col.Cells(i).Value = "" Then
                col.Cells(i).ClearContents
            ElseIf Trim(col.Cells(i).Value) = "" Then
                col.Cells(i).ClearContents
            End If
        Next i
    Next col

    Application.ScreenUpdating = scrn
End Sub

此外,如果您从MS-Access复制和粘贴,您可能会发现这个也很有用:

Public Sub UnWrapText(): Selection.WrapText = False: End Sub

我已经绑定了我的Ribbon / QAT上的按钮,这让我的生活变得更加无忧无虑。

答案 1 :(得分:0)

您也可以尝试以下方法:

  • 选择您所在的地区。
  • 在“查找和替换”对话框中,将“查找内容:”框留空。
  • 输入数据中尚不存在的任何值,例如“替换为:”框中的管道(“|”)。
  • 选中“匹配整个单元格内容”选项。
  • "全部替换"
  • 现在,在“查找内容:”框中输入管道,并清除“替换为:”框。
  • 全部替换”,大功告成!

来源:https://www.mrexcel.com/board/threads/how-to-remove-null-string-from-cells.565955/(由我更新)