【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属性,这 ...
 
随机推荐
- Exception引起的性能问题
			
先show一下两段代码,两段代码都能比较好的实现业务逻辑,但是在高并发下,如果传入的参数为空,那么两段代码的性能表现完全不一样. private static string Get(string fi ...
 - 从web到搭建ssm环境
			
1:我先建立了个web项目, (1)在pom.xml中添加了如下 <dependencies> <!-- Spring --> <depend ...
 - 【模拟】[NOIP2011]铺地毯[c++]
			
题目描述 为了准备一个独特的颁奖典礼,组织者在会场的一片矩形区域(可看做是平面直角坐标系的第一象限)铺上一些矩形地毯,一共有n张地毯,编号从 1 到n.现在将这些地毯按照编号从小到大的顺序平行于坐标轴 ...
 - spring注解之@profile
			
spring中@profile与maven中的profile很相似,通过配置来改变参数. 例如在开发环境与生产环境使用不同的参数,可以配置两套配置文件,通过@profile来激活需要的环境,但维护两套 ...
 - springboot获取properties文件的配置内容(转载)
			
1.使用@Value注解读取读取properties配置文件时,默认读取的是application.properties. application.properties: demo.name=Name ...
 - Nginx配置实际案例
			
user root root;worker_processes 2; #error_log logs/error.log;#error_log logs/error.log notice;#error ...
 - golang dlv 远程调试
			
因为不知道delvel 是如何设置源码的,本地编译的上传到服务器上,服务器要调试看不到源码,很是忧伤,所以干脆使用远程调试吧: 在服务器上 ps x|grep game 查找到gameserver的进 ...
 - android:第十章,后台的默默劳动者——服务,学习笔记
			
一.多线程 1)本章首先介绍了安卓的多线程编程,说明在子线程中如果要修改UI,必须通过Handler, Message, MessageQueue, Looper来实现,但是这样毕竟太麻烦了. 2) ...
 - virltualbox 升级之后 苹果虚拟机报The installed support driver doesn't match the version of the user解决方案
			
1.反安装virtualbox后,不要重启 2.删除virtualbox的安装目录 3.进入%userprofile% 目录 (比如: C:\users\me) 删除 .VirtualBox Virt ...
 - 自动化中app支持schema跳转
			
android schema: String url = "adb -s " + udid + " shell am start -a 'android.intent.a ...