【Excel】读取固定长文本
'*******************************************************************************
' 固定長形式テキストファイルを読み込むサンプル(改行なし)
'
' 作成者:井上治 URL:http://www.ne.jp/asahi/excel/inoue/ [Excelでお仕事!]
'*******************************************************************************
' [参照設定]
' ・Microsoft Scripting Runtime
'*******************************************************************************
Option Explicit
' レコードの項目定義
Private Type typREC
CODE As String * ' コード
MAKER As String * ' メーカー
HINMEI As String * ' 品名
SURYO As String * ' 数量
TANKA As String * ' 単価
KINGAKU As String * ' 金額
' CRLF As String * 2 ' 改行コード分のダミー項目
End Type '*******************************************************************************
' 固定長形式テキストファイルを読み込むサンプル(改行なし)
' 参照設定:(未使用)
'*******************************************************************************
Sub READ_FixLngFile2()
Const cnsFILENAME = "\SAMPLE2.dat"
Const cnsLNGS = ' レコード長
Dim strFileName As String ' ファイル名
Dim intFF As Integer ' FreeFile値
Dim lngLOF As Long ' LOF値
Dim lngPOS As Long ' 読み込み位置
Dim GYO As Long ' 収容するセルの行
Dim tmpREC As typREC ' レコード定義
Dim strREC As String ' レコードを収容する変数 ' 指定ファイルをOPEN(入力モード)
strFileName = ThisWorkbook.Path & cnsFILENAME
intFF = FreeFile
Open strFileName For Binary As #intFF
lngLOF = LOF(intFF) ' LOF値(ファイルサイズ)取得
lngPOS = ' 読み込み位置
' 2行目から開始
Rows("2:65536").ClearContents
GYO =
Do Until lngPOS > lngLOF
' レコードの読み込み
Get #intFF, lngPOS, tmpREC
' 1レコード分のセルへのセット
'-----------------------------------------------------------------------
' A列(コード)は5バイトの文字列処理
Cells(GYO, ).Value = Trim(tmpREC.CODE)
' B列(メーカー)は10バイトの文字列処理
Cells(GYO, ).Value = Trim(tmpREC.MAKER)
' C列(品名)は15バイトの文字列処理
Cells(GYO, ).Value = Trim(tmpREC.HINMEI)
' D列(数量)は4バイトの数値処理
Cells(GYO, ).Value = CCur(tmpREC.SURYO)
' E列(単価)は6バイトの数値処理
Cells(GYO, ).Value = CCur(tmpREC.TANKA)
' F列(金額)は8バイトの数値処理
Cells(GYO, ).Value = CCur(tmpREC.KINGAKU)
'-----------------------------------------------------------------------
' 読み込み位置を加算
lngPOS = lngPOS + cnsLNGS
' 行を加算
GYO = GYO +
Loop
' 指定ファイルをCLOSE
Close #intFF
End Sub '-----------------------------<< End of Source >>-------------------------------
【Excel】读取固定长文本的更多相关文章
- 【Excel】输出固定长文本
'******************************************************************************* ' 固定長形式テキストファイル書き出す ...
- SpringBatch Sample (四)(固定长格式文件读写)
前篇关于Spring Batch的文章,讲述了Spring Batch 对XML文件的读写操作. 本文将通过一个完整的实例,与大家一起讨论运用Spring Batch对固定长格式文件的读写操作.实例延 ...
- C#读取固定文本格式的txt文件
C#读取固定文本格式的txt文件 一个简单的C#读取txt文档的程序,文档中用固定的格式存放着实例数据. //判断关键字在文档中是否存在 ] == "设备ID:107157061" ...
- ABAP读取长文本的方法
SAP中所有的项目文本都存在以下两张数据表中: 1. STXH 抬头项目文本 透明表 2. STXL 明细项目文本 透明表 长文本读取方法 首先在STXH和STXL中根据OBJECT NAME ...
- smartforms长文本处理方式
因为长文本的话不好换行,在smartforms中对于长文本的处理有两种:一种是自定义文本模板,自己定义好的文本格式,然后再使用的时候再文本类型中选择文本模板,最好是勾上如果没有文本存在怎无错误.这种方 ...
- ABAP程序中关于长文本的处理方法
现象描述 长文本在SAP的运用主要体现在一些notes的记录,或者一些比较长的文本的存取,比如工作流的审批意见,采购申请和采购订单的附加说明等等.如下图: 处理过程 1:SAP中所有的长文本都存在两张 ...
- 利用poi包装一个简单的Excel读取器.一(适配一个Reader并提供readLine方法)
通常,读文本我们会使用BufferedReader,它装饰或者说管理了InputStreamReader,同时提供readLine()简化了我们对文本行的读取.就像从流水线上获取产品一样,每当取完一件 ...
- Bert不完全手册9. 长文本建模 BigBird & Longformer & Reformer & Performer
这一章我们来唠唠如何优化BERT对文本长度的限制.BERT使用的Transformer结构核心在于注意力机制强大的交互和记忆能力.不过Attention本身O(n^2)的计算和内存复杂度,也限制了Tr ...
- css截断长文本显示
实现 截断长文本显示处理,以前是通过后台的截取,但这种方法容易丢失数据,不利于SEO. 而通过前端css的截断,则灵活多变,可统一运用与整个网站. 这项技术主要运用了text-overflow属性,这 ...
随机推荐
- 受欢迎的牛 [HAOI2006] [强连通] [传递闭包(划)]
Description 每一头牛的愿望就是变成一头最受欢迎的牛.现在有N头牛,给你M对整数(A,B),表示牛 A 认为牛 B受欢迎.这种关系是具有传递性的,如果A认为B受欢迎,B认为C受欢迎,那么牛A ...
- Java 基础 在Java中需要使用内存的组件
Java程序启动后作为一个进程运行在操作系统中,那么这个进程有哪些部分需要分配内存? 1 Java堆 Java堆用于存储Java对象,堆的大小在JVM启动时向操作系统一次性申请完成,通过-Xmx和-X ...
- pygame-KidsCanCode系列jumpy-part9-使用spritesheet
做过前端的兄弟应该都知道css sprite(也称css精灵),这是一种常用的减少http请求次数的优化手段.把很多小图拼成一张大图,只加载1次,然后用css定位到不区的区域,从而展示不同的图片.游戏 ...
- C# Task 是什么?返回值如何实现? Wait如何实现
关于Task的API太多了,网上的实例也很多,现在我们来说说Task究竟是个什么东西[task一般用于多线程,它一定与线程有关],还有它的返回值有事怎么搞的. 首先我们以一个最简单的API开始,Tas ...
- 异常 Exception 知识点总结 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- python 新手常见问题
1.python 三元运算符 无,用 if else 2.python 设置代码缩进 全选..然后按tab 3.记录程序运行时间 import time time_start=time.time() ...
- Fiddler Composer 模拟post请求
在模拟post请求的时候,发现服务器端无法接收post参数 发现原来的请求表头的设置问题加上表头 Content-Type: application/x-www-form-urlencoded 后正常
- grid和flex区别
网格容器 VS Flex容器 网格属性 VS Flex属性
- Webhook 实践 —— 自动部署
https://segmentfault.com/a/1190000007892407 安装nodejs 安装nodejs建议直接下载二进制包,把官网上的64位二进制版本下载地址复制下来,执行 wge ...
- golang 使用pprof和go-torch做性能分析
软件开发过程中,项目上线并不是终点.上线后,还要对程序的取样分析运行情况,并重构现有的功能,让程序执行更高效更稳写. golang的工具包内自带pprof功能,使找出程序中占内存和CPU较多的部分功能 ...