使用未记录的“Application.Trim”并了解 VBA 智能感知建议

2024-02-27

当我用谷歌搜索时Trim,我发现它是一个Excel函数,也是一个VBA函数。

在这两种情况下的 VBA 中,它只能与一个单元格一起使用,并且需要对多个单元格的范围进行循环。但是,我发现一些网页说明了使用Application.Trim在没有循环的范围内,它确实可以工作并且非常快。

我的问题是,如何Trim与...一起使用Application,即使是未记录的和 vba intellisense 在我输入 Application 后也不显示 TRIM。这是否意味着WorksheetFunction.可以替换为Application.产生不同的行为?

Sub Trim_Issue()
 
   Dim rng As Range
   Set rng = ActiveSheet.Range("A2:A3")
 
   rng = Application.Trim(rng) 'This works although I do not know how
 
   rng = WorksheetFunction.Trim(rng) 'cause error as it need loop
 
End Sub

Application.Trim

  • 我的小调查让我相信Application.Trim实际上适用于数组并返回修剪值的从一开始的数组。
  • If rng是一个具有多个单元格的连续范围,表达式rng.Value(在等式的右侧)实际上是一个包含范围内的值的基于 1 的二维数组。

Range

Sub TrimShort()
 
    Dim rng As Range: Set rng = ActiveSheet.Range("A2:A3")
    ' The expression 'rng = Application.Trim(rng)' is short for:
    rng.Value = Application.Trim(rng.Value)
 
End Sub

Sub TrimLong()
    Dim rng As Range: Set rng = ActiveSheet.Range("A2:A3")
    ' Note that the following line is inaccurate
    ' i.e. it will fail if the range contains one cell only.
    Dim Data1() As Variant: Data1 = rng.Value
    Dim Data2() As Variant: Data2 = Application.Trim(Data1)
    rng.Value = Data2
 
End Sub

Arrays

Sub TrimOneD()
    
    Dim sArr() As String: sArr = Split(" A A ,  B  B", ",") ' 1D zero-based
    
    Dim dArr() As Variant: dArr = Application.Trim(sArr) ' 1D one-based
    
    Debug.Print "srIndex", "sArr", "dArr"
    
    Dim r As Long
    
    For r = 0 To UBound(sArr)
        Debug.Print r, sArr(r), dArr(r + 1)
    Next r

End Sub

Sub TrimTwoD()
    
    Dim sData() As Variant: ReDim sData(0 To 1, 0 To 1) ' 2D zero-based
    sData(0, 0) = " A A "
    sData(0, 1) = "  B  B"
    sData(1, 0) = " D   D "
    sData(1, 1) = CVErr(xlErrNA) ' it will not fail if error value
    
    Dim dData() As Variant: dData = Application.Trim(sData) ' 2D one-based
    
    Debug.Print "srIndex", "scIndex", "sData", "dData"
    
    Dim r As Long, c As Long
    
    For r = 0 To UBound(sData, 1)
        For c = 0 To UBound(sData, 2)
            Debug.Print r, c, sData(r, c), dData(r + 1, c + 1)
        Next c
    Next r

End Sub

Results

srIndex        sArr          dArr
 0             A A          A A
 1              B  B        B B

srIndex       scIndex       sData         dData
 0             0             A A          A A
 0             1              B  B        B B
 1             0             D   D        D D
 1             1            Error 2042    Error 2042
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用未记录的“Application.Trim”并了解 VBA 智能感知建议 的相关文章

  • Apache POI - FileInputStream 工作,文件对象失败(NullPointerException)

    我尝试将所有工作表从一个工作簿复制到另一工作簿 问题是 如果我通过 FileInputStream 读取工作簿 它可以正常工作 但它不适用于文件对象 考虑以下方法 import java io BufferedReader import j
  • 为什么 Excel 有时会在工作表名称中添加 $?

    我有时但并非总是发现 Excel 会放置一个 位于工作表名称末尾 但在 Excel 中看不到 只有在尝试使用 C 将其导入 SQL Server 时才可见 我遇到过很多不同的情况 它保留了原始工作表 但也创建了第二个空的 隐藏 工作表 其中
  • 有没有任何方法可以使用 openpyxl 获取 .xlsx 工作表中存在的行数和列数?

    有没有任何方法可以使用 openpyxl 获取 xlsx 工作表中存在的行数和列数 在xlrd中 sheet ncols sheet nrows 将给出列数和行数 openpyxl中有这样的方法吗 给定一个变量sheet 可以通过以下方式之
  • 通过文本自动创建到另一个工作表的超链接

    我想知道如何基于各自工作表中两个单元格具有的相同文本值 通过脚本自动创建从一个 Excel 工作表到另一个 Excel 工作表的超链接 如果这可以在没有脚本的情况下完成 使用某种公式 如 VLOOKUP 这将是更好的选择 谢谢你的时间 使用
  • 使用 Apache POI 和 Java 创建 Excel (.xlsx) 文件后文件损坏

    我已经使用 Apache POI API 使用 Java 成功创建了 xlsx 格式的工作簿 Excel 我的代码如下 在 D 盘创建一个名为 RiponAlWasim xlsx 的文件 Workbook wb new XSSFWorkbo
  • 检查所选单元格是否在特定范围内

    我正在使用 C 创建 Excel 加载项 如何检查选定的 或代码中范围表示的单元格 是否在特定范围内 例如如何检查单元格 P 5 是否在 A 1 Z 10 范围内 Use Application Intersect 像这样 在VBA中 Su
  • 双击打开 Excel 工作簿时,Excel 2010 AddIn 未加载

    我为 Excel 2010 编写了一个加载项 如果我从 开始 菜单打开 Excel 它可以正常工作 但是 如果我双击 Excel 工作簿 则无法加载 AddIn 我签入了ThisAddIn cs 方法InternalStartup 没有参与
  • 使用 ClosedXML 附加到 excel 文件

    我需要将新数据附加到使用 ClosedXML 创建的现有 Excel 文件中 如何使用 ClosedXML 附加到 Excel 文件 如何获取最后一条记录的行号并将其附加到该行号上 或者还有其他内容 Thanks 打开现有工作簿 然后使用L
  • Excel如何获取一个时间间隔内的小时数?

    我有两列 Night shift start 19 00 Night end 04 00 我每天都有一些日期列 Work started 07 30 Worked ended 22 00 我想获取夜班开始和夜班结束之间的小数小时数 我需要计
  • 如何将 Excel 中的图表导出为图形

    我有一系列 Excel 电子表格 每个电子表格至少包含一页数据和一页根据数据创建的图表 我需要捕获 不从数据中重新生成 将现有图表作为网络友好图像 这可以通过 Java 或 Net 实现吗 我知道 POI 的东西 Java 不会这样做 或者
  • MS Access VBA:通过 Outlook 发送电子邮件 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何使用 MS Access VBA 通过帐户发送电子邮件 我知道这个问题很模糊 但是很难在网上找到在某种程度上还没有过时的相关信息 编辑
  • 即使在 Excel 2007 中插入行时也保持绝对引用

    我有一个电子表格 我希望单元格公式始终查看特定单元格 即使插入行或列并且特定单元格移动也是如此 实际上 我总是想查看表格的 顶部 单元格 即使在表格顶部插入了新行 例如 单元格 A2 的公式为 E 2 现在我突出显示第 1 行并执行 插入行
  • 将 copyfromrecordset 写入范围

    我有以下 vba 它从单元格 C10 开始读取 MCO 直到其为空 并将从 SQL 数据库获取机器数量 解密和升级机器数量 这工作正常 但我在获取相应行中的数据时遇到问题 目前它总是将数据写入 D10 因为我已经对其进行了硬编码 但我不确定
  • 复制列中的所有单元格[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我有一张表 有 200 行 行间有一
  • FileDialog 保留以前的过滤器

    我正在 Access 数据库中制作表单 我需要打开文件对话框窗口几次 我只是不明白为什么在我更改选项值几次并打开文件对话框窗口后它没有更改过滤器 Public Sub Command17 Click Dim fd As FileDialog
  • Excel - 查找列中不是错误或空白的最后一个值

    我需要在 Excel 电子表格的一列中找到最后一个非错误 非空白值 该列可以有多个 N A 实例 它们与实际值交替 有多种解决方案可用于查找最后一个非空单元格 但这些解决方案不考虑错误 特别是如果最后一个非空单元格出现错误 在这种情况下 解
  • 使用 PDFMAKER 将多封电子邮件保存为 pdf

    我是 VBA 的新手 但我用 SAS 编写了一些程序 用汇编程序 大型机和 PC Word Perfect 宏 编写了一些程序 用 Java HTML 和其他东西编写了一些程序 我所做的是 当我遇到问题并且我认为我可以对其进行编程时 我会在
  • 将所有工作簿工作表复制到新工作簿 VBA

    我正在使用此代码将工作簿中的每张工作表复制到新工作簿中 它工作正常 但它颠倒了工作表的顺序 是否有办法阻止它这样做 Sub copy copies all the sheets of the open workbook to a new o
  • VBA 中的 VSTO:AddIn.Object 有时不返回任何内容 (null)

    Given VSTO 插件 An override object RequestComAddInAutomationService 它返回一个名为的类的实例Facade在我的场景中 Excel 2007 中的 VBA 宏可访问AddIn O
  • 你将如何开始自动化我的工作? - 第2部分

    后续这个问题 https stackoverflow com questions 2796128 how would you start automating my job 在经历了第一波进货 9 小时的复制 粘贴 后 我现在相信我已经满足

随机推荐

  • 将 pandas DataFrame 中的非空单元格移至左侧

    假设我有以下形式的数据 Name h1 h2 h3 h4 A 1 nan 2 3 B nan nan 1 3 C 1 3 2 nan 我想将所有非纳米单元移动到左侧 或收集新列中的所有非纳米数据 同时保留从左到右的顺序 得到 Name h1
  • 设置初始标题单击 gwt 单元格表的默认排序顺序

    我有一个带有可排序列的 GWT CellTable 与开发人员指南示例非常相似 http code google com webtoolkit doc latest DevGuideUiCellTable html columnSortin
  • jQuery Mobile 获取当前页面

    我正在使用 jQuery Mobile 1 1 1 和 Apache Cordova 2 0 0 我希望我的应用程序在按下后退按钮时退出 但前提是当前页面的 ID feedZive 我正在使用以下代码来执行此操作 function onDe
  • iText 7.0.5 - 表单 - 添加大量带有表单字段的表时出现 NullPointerException

    我用了布鲁诺的例子 https developers itextpdf com examples form examples clone create fields table https developers itextpdf com e
  • 如何更改转置表以使其水平滚动?

    我正在制作一个产品比较表 它是一个具有垂直行的表格 左侧有一个标题 表格主体内的垂直行中有两个或多个产品描述 如果用户选择很多产品 它应该是水平滚动的 我使用过CSS这个答案 https stackoverflow com a 169194
  • React-Window无限调用RenderRow函数

    我用过react window在 UI 上呈现大型列表 不知道为什么当我滚动时它会无限地调用 RenderRow 函数 并且当我滚动时它无法渲染待处理的行 显示空白屏幕 谁能告诉我 我做错了什么 谢谢 有一个小东西漏掉了 就是必须发的款式R
  • Ruby on Rails:使用控制器、操作和参数获取路线

    我对 RoR 很陌生 我正在寻找一种获取给定控制器 操作和参数的路线的方法 类似于 url for 但没有域和协议 可以说我有 params controller gt controller action gt edit project i
  • DisplayMemberPath串联

    我正在尝试将两个值绑定到 ComboBox 显示值 但我不知道该怎么做 这种方法行不通 cboRegion DisplayMemberPath idregion description 有谁知道如何在 C 中做到这一点 不幸的是 这是不可能
  • 如何从 sfUser 获取 id?

    我正在使用 symfony 1 4 我使用 sfDoctrineGuardPlugin 作为身份验证工具 我想捕获用户的 ID 以便将其存储在我的表中 经过一番小研究 我想我必须使用这个表达方式 getUser gt getGuardUse
  • 如何检测我是否处于“控制台”模式

    我正在编写一个从浏览器运行的应用程序 然而 一些模型函数也是从 Yii2 控制台调用的 因此 我在尝试访问 GUI 中设置的变量时遇到错误 是否可以知道我处于哪种模式 是否自动设置了一些环境变量 或者我应该在控制台应用程序中设置一些会话变量
  • 如何使用 MVC5 和实体框架使用自定义属性更新 IdentityUser

    我正在使用内置的身份框架进行用户管理 并且想向 AspNetUsers 表添加一些自定义项 到目前为止 我遇到的每个问题的解决方案都会导致另一个问题 如果我对用户模型进行更改 例如 通过在 AspNetUsers 表中添加邮政编码属性和匹配
  • 加载密钥“(stdin)”时出错:格式无效 Gitlab CI

    这是我关于 gitlab ci 的 ssh 的 yaml 文件的一部分 eval ssh agent s echo SSH PRIVATE KEY tr d r ssh add gt dev null mkdir p ssh chmod 7
  • 使用 Python 将 XML 文档插入现有 XML

    给定这些 XML 文档 文件1
  • ASP.NET MVC 4.0 控制器和 MEF,如何将这两者结合在一起?

    我正在尝试使用 MEF 创建 ASP NET MVC 模块 虽然到目前为止我在不使用 MVC 的情况下使用 MEF 没有任何问题 但在导出控制器时我遇到了一些困难 我用这种方法作为例子http kennytordeur blogspot d
  • 如何快速识别 Snakemake 中的规则是否需要输入函数

    我正在关注其文档页面上的 Snakemake 教程 并且确实陷入了输入函数的概念https snakemake readthedocs io en stable tutorial advanced html step 3 input fun
  • 未定义符号:_ZdlPvm

    我在用阿波罗咖啡 https github com Russell91 apollocaffe and 重新检查 https github com Russell91 ReInspect Apollocaffe在 c 库中并且Reinspe
  • Ruby:反转哈希以保留非唯一值

    我有一个看起来像这样的哈希 a gt 1 2 3 b gt 4 5 6 c gt 3 4 5 d gt 7 2 3 我想要做的是使用包含它的所有键的数组对所有现有值进行哈希 例如把上面的变成这样 1 gt a 2 gt a d 3 gt a
  • 您可以从 iPhone 应用程序下载 PDF 格式的内容吗

    是否可以将 iPhone 应用程序中的特定屏幕下载为 PDF 格式 我检查了 iphone 开发者门户和很多其他地方 但找不到答案 我想做的就是单击一个按钮 然后将该屏幕下载为 pdf 并将其存储在某个位置 这可能吗 如果是这样 您会将其存
  • 您对 iAd 和 adSense 有何建议 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在考虑在我的应用程序中添加一个添加项 在 iAd 和 adSense 之间 您会向我推荐哪种广告计划
  • 使用未记录的“Application.Trim”并了解 VBA 智能感知建议

    当我用谷歌搜索时Trim 我发现它是一个Excel函数 也是一个VBA函数 在这两种情况下的 VBA 中 它只能与一个单元格一起使用 并且需要对多个单元格的范围进行循环 但是 我发现一些网页说明了使用Application Trim在没有循