Excel VBA - 如何逐行读取csv文件而不是整个文件

2024-05-14

这是我需要读取的 csv 文件内容:

"header", "header", "header", "header", "header", "header"
"value", "value", "", "value", "value", ""
"value", "value", "value", "value", "value", ""    

我在网上找到了导入文件的代码:

Sub ImportCSVFile(ByVal filePath As String, ByVal ImportToRow As Integer, ByVal StartColumn As Integer)

Dim line As String
Dim arrayOfElements
Dim element As Variant


Open filePath For Input As #1 ' Open file for input
    Do While Not EOF(1) ' Loop until end of file
        ImportToRow = ImportToRow + 1
        Line Input #1, line
        arrayOfElements = Split(line, ";") 'Split the line into the array.

        'Loop thorugh every element in the array and print to Excelfile
        For Each element In arrayOfElements
            Cells(ImportToRow, StartColumn).Value = element
            StartColumn = StartColumn + 1
        Next
    Loop
Close #1 ' Close file.
End Sub

由于某种我还没有弄清楚的原因,该代码不会逐行读取,而是读取这一行的整个文件

    Line Input #1, line

有人能解释为什么它不起作用吗?


顺便说一句,我如何将 Lf 终止符更正为 CrLf 终止符

Private Sub Correct_Lf_to_CrLf(ByVal FilePath As String)
    Dim DataLine As String
    Open Environ("TEMP") & "\temp.txt" For Output As #1
        Open FilePath For Input As #2
            While Not EOF(2)
                Line Input #2, DataLine
                Print #1, Replace(DataLine, vbLf, vbNewLine)
            Wend
        Close #2
    Close #1


    'NOTE: Your original file will be replaced with the new file 
    '      where Lf are replaced with CrLf, amend where it is appropriate.
    FileSystem.FileCopy Environ("TEMP") & "\temp.txt", FilePath
End Sub

FYI: vbNewLine is vbCrLf

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

Excel VBA - 如何逐行读取csv文件而不是整个文件 的相关文章

  • 如何修复日期过滤器 VBA,因为它没有拾取我范围内的所有日期

    我正在尝试创建一个过滤器来过滤掉我选择的日期内的所有日期 我选择的日期将始终反映整个月 例如 如果我需要 2019 年 5 月的数据 我将输入开始日期为 01 05 2019 结束日期为 31 05 2019 我的数据过滤器将需要选取经过我
  • 将用户定义的表类型从 VBA 传递到 SQL

    我的任务是创建一个 Excel 电子表格作为 SQL 数据库的前端 以及一些对数据执行复杂计算的 C 我的老板想要前端作为电子表格 而计算对于 VBA 来说似乎太复杂了 目前 检索数据集的存储过程运行良好 然后 用户将在 Excel 中编辑
  • Excel 的 VBA - 如何检查范围的交集不为空

    我有两个问题 1 如何检查交集或范围是否不为空 例如 如果我想检查它是否为空 我会写 if application intersect r1 r2 is nothing 但有什么东西是否定虚无的吗 例如 并非没有任何事情不起作用 2 如何比
  • 如何区分列表框中显示的文本和实际值?

    我有一个带有多选选项的列表框 我使用以下方式填充它addItem功能 我在 Google 上找不到任何有关此内容的文章 但我需要区分列表框中显示的文本和实际值 例如 shown hiddenvalue monday A1 tuesday A
  • 如何分块加载 Pickle 文件?

    是否有任何选项可以批量加载 pickle 文件 我知道我们可以将数据保存在 CSV 中并分块加载 但除了 CSV 之外 是否有任何选项可以批量加载 pickle 文件或任何 python 本机文件 基于Python pickle 的文档 h
  • 如何将一行分成多行?

    我有一个 CSV 文件 看起来像这样 Column1 Column2 Column3 John Smith AA AH CA NI PB Reginald Higginsworth AA AH CA NI PB SN ZS 您会注意到其中有
  • 如何使用 C# 了解 Excel 中的分页符 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在使用 C 创建并格式化 Excel 电子表格 因此我需要格式化 合并单元格 更改字体等 直到第一页的最后 如何知道 Excel 电子
  • 如何使用 ssis 2008 循环遍历 Excel 文件并获取工作表名称

    我正在尝试将 Excel 文件中的数据加载到 SQL 数据库表中 该文件的工作表名称不是静态的 工作表名称包含 yyyymmdd 它会随每个文件而变化 我按照提供的解决方案进行操作如何使用 SSIS 包循环遍历 Excel 文件并将其加载到
  • 如何在 Excel 中创建 GUID?

    我需要一个函数来将 GUID 添加到 Excel 中的单元格 我发现stackoverflow 上的上一个问题 https stackoverflow com questions 7031347 how can i generate gui
  • 防止在单元格中更改行时重新格式化字符

    我有一个带有格式化文本的单元格 其中包含我想要用行更改替换的某个子字符串 子字符串是带有方括号的 enterkey 这是这个问题的一个变体在 Excel 中将 HTML 标记 替换为 Alt Enter https stackoverflo
  • 按字母顺序对组合框值进行排序

    我的 Excel 用户表单中有一个组合框 按字母顺序排序的最简单方法是什么 它的值是在 vba 中硬编码的 新的值只是添加到底部 因此它们不按任何顺序排列 当前正在使用用户表单 以便我们的用户可以将数据从我们的数据库导入到 Excel 中
  • 打开特定工作表上的 Excel 文件

    我有一个包含 5 个工作表的 Excel 文件 我想用 C 代码打开它 当它打开时 我希望激活第 3 页 我怎样才能做到这一点 像这样 using Excel Excel Application excelApp new Excel App
  • 从 Excel VBA 调用 Bloomberg BQL 查询

    出于复杂的原因 我想在 VBA 中自动调用 Bloomi BQL 查询 我正在从 VBA 脚本更改 Excel 工作表中 BQL Query 公式的输入 并调用 Application Calculate 来运行查询 显示更改为 N A 请
  • VBA复制单元格值和格式

    我如何修改以下代码以便不仅复制值而且复制字体样式 例如大胆或不大胆 谢谢 Private Sub CommandButton1 Click Dim i As Integer Dim a As Integer a 15 For i 11 To
  • 如何将工作表和范围作为变量传递?

    我想在子例程之间传递工作表的名称和范围 以下抛出 下标超出范围 错误 Sub This x Sheet1 y D3 MsgBox x Range y Value End Sub This is 我的项目资源管理器的示例 https i st
  • VBA - 如何从网站下载.xls并将数据放入Excel文件

    我设法使用 VBA 达到准备从网络下载 Excel 文件的程度 但我无法弄清楚如何实际下载该文件并将其内容放入我正在使用的 Excel 文件中 有什么建议么 谢谢 这是到目前为止的代码 Sub GetData Dim IE As Inter
  • 根据用户名获取广告详细信息

    我有一个代码可以从 AD 检索用户的详细信息 例如电子邮件地址 电话号码等 我当前使用的代码是 Set objSysInfo CreateObject ADSystemInfo strUser objSysInfo UserName msg
  • 两个数组相乘 - 区域小数分隔符问题

    Background 刚才 我回答了一个问题 我必须将两个相同大小的数组相乘 但是我注意到我的本地小数分隔符存在一个特殊问题 Sample Code Sub Sample Dim arr1 As Variant arr2 As Varian
  • 在 BIRT 中导出的 Excel 中表格单元格的文本换行

    我在 eclipse 中使用 BIRT 4 4 1 来生成报告 我想包装表头的文本 它在网络查看器中工作正常 但是当我导出到 Excel 时 表单元格文本在一行中 并且文本也溢出 我不想使单元格宽度等于内容 我想根据其容器宽度来换行文本 我
  • 如果不是,则必须删除单元格的第一个字符 #3Created 循环永远不会结束

    所以基本上 我需要删除主键字段中第二位数字不为 3 的所有记录 例如可以如下所示 39001 或者没有 3 我想要的是所有以非 3 开头的单元格 它们的行都被删除我想出了以下代码 它删除了所有单元格 但宏永远不会停止运行 Sub keep3

随机推荐

  • 从多线程程序中调用 system()

    我们正在开发一个用 C 编写的多线程内存消耗应用程序 我们必须执行大量的 shellscript linux 命令 并获取返回码 读完之后article http www linuxprogrammingblog com threads a
  • 使 Chrome 扩展弹出窗口透明

    我正在写一个 chrome 扩展 我想知道是否有办法使弹出窗口透明 即即使弹出窗口覆盖当前页面 用户也可以看到当前页面的内容 谢谢你 昨天我想到了一个有趣的想法 虽然你不能删除白色背景 但你仍然可以mimic透明背景 这可以通过在打开弹出窗
  • Browserify:如果需要,使用 module.exports,否则暴露全局

    我正在考虑采用浏览器化 http browserify org 对于我的一些项目 但想确保其他人如果想使用 捆绑的 代码就不必使用 browserify 执行此操作的明显方法是通过以下方式公开模块导出module exports以及通过一个
  • System.IO.IOException:由于意外>数据包格式,握手失败?

    有谁知道这意味着什么 System Net WebException 底层连接已关闭 发送时发生意外错误 gt System IO IOException 由于意外 握手失败 数据包格式 在 System Net Security SslS
  • 是否可以将一位的位向量转换为 SMTLib2 中的布尔变量?

    我想要一个布尔变量来测试 例如 位向量的第三位是否为 0 位向量的理论允许提取 1 位作为位向量 但不是布尔类型 我想知道我是否可以出演这个角色 谢谢 更新 如果我的问题不清楚 我很抱歉 但 Nikolaj Bjorner 的答案是如何测试
  • 将 Python Selenium 输出写入 Excel

    我编写了一个脚本来从在线网站上抓取产品信息 目标是将这些信息写入 Excel 文件 由于我的Python知识有限 我只知道如何在Powershell中使用Out file导出 但结果是每个产品的信息都打印在不同的行上 我希望每种产品都有一条
  • Xamarin.Forms DataTemplateSelector 不适用于 iOS(未调用构造函数)

    我正在膨胀数据模板选择器 如下所示
  • 复制文件时 Ant 重命名

    如何在将文件复制到ant中的目录时重命名文件
  • Mongoid 中的 find_or_create_by 线程安全吗?

    我有一个使用 Mongoid 的 find or create by 方法的网络应用程序 poll Poll find or create by fields 在投入生产之前 我尝试运行故障场景 我发现多个用户可以尝试使用此方法访问此资源
  • 在 wampserver 2.2 上安装 php_imagick.dll PHP 扩展

    我使用的是 32 位操作系统的 Windows 7 我安装了 ImageMagick 6 8 7 Q16Link https www imagemagick org script download php windows我能够从命令行 转换
  • NEST 1.0:请参阅 Fiddler 上的请求

    我刚刚更新到 NEST 1 0 我在远程服务器 不是本地主机 上有 Elastic Search 通常我在使用 Fiddler 发送和接收请求时没有任何问题 更新后 bammm 没有检测到任何请求 但我的应用程序发出这些请求没有任何问题 你
  • 我可以在 if 语句中使用“as”机制吗

    是否可以使用as in if类似的声明with我们使用的 例如 with open tmp foo r as ofile do something with ofile 这是我的代码 def my list rtrn lst True if
  • 如何修改actix-web中间件中的请求数据? [复制]

    这个问题在这里已经有答案了 是否有推荐的方法来修改 actix web 上收到的请求 我正在寻找将数据添加到请求对象并使其可供下游中间件和处理程序处理的方法 The 中间件文档 https actix rs docs middleware
  • Microsoft Surface 支持 Flash 网站吗? [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我搜索过谷歌但没有找到明确的答案 我或我工作的 Flash 网站 应用程序可以在 Microsoft Surface 平板电脑上运行吗 看来微软 Su
  • 比较 Objective C 中的 NSNumber

    我是 Objective C 的初学者 对这种情况有点困惑 我有以下代码 if number1 lt number2 NSLog THE FOLLOWING NUMBER NSLog number1 NSLog IS LESS THAN N
  • 无法识别用“授权”属性修饰的 SignalR 中心中的用户上下文

    Server MVC 5 WebApi 2 内的 SignalR 集线器 安全性 不记名令牌 Client 使用 HttpWebRequest 从 WebApi 控制器 Token 端点检索承载令牌的 C 类 我使用了所描述的模式here
  • 动态更改 vuejs 2 中的选择输入选项

    如何动态更改选择下拉 v model 中的选项 我有 2 个选择输入 其中一个应该根据其他输入进行更改 例如 如果我选择 水果 则选择显示水果 如果我选择 蔬菜 则选择显示蔬菜 我不使用Vuejs 但查看文档后 var TypesArr F
  • 禁用 iPhone 4S / 新 iPad 键盘上的听写按钮

    我们的应用程序是一个医疗保健应用程序 我们的应用程序中有一个符合 HIPAA 标准的语音识别器 所有听写都可以通过它进行 医院不希望医生意外开始与不符合 HIPAA 标准的 Nuance Dragon 服务器进行对话 因此 我正在寻找可以抑
  • 如何生成Mac应用程序的安装包?

    如何为 OS X 二进制文件以及一些配置和脚本文件创建单个安装程序包 最终文件夹应如下所示 任何帮助 将不胜感激 谢谢 如果您希望将各种东西放置在不同的位置 安装程序在这里 文档在那里 支持文件在这里等等 它们也非常适合提供安装体验的可配置
  • Excel VBA - 如何逐行读取csv文件而不是整个文件

    这是我需要读取的 csv 文件内容 header header header header header header value value value value value value value value value 我在网上找到