VBA DAO批量设置数据表字段的Unicode 压缩属性为真
- 2020-12-17 08:00:00
- zstmtony 原创
- 330
VBA DAO批量设置数据表字段的Unicode 压缩属性为真
数据表中字段的属性Unicode压缩 如果设置为否,则导出到数据到Excel ,后面可能带有空格
如果表和字段非常多的话,如何批量设置字段属性 Unicode 压缩呢,经过不断尝试,终于成功了
代码如下:
Dim tdf As TableDef
Dim prp As DAO.Property
Dim fld As DAO.Field
Dim db As DAO.Database
Set db = CurrentDb '必须要设置这个,直接用current.TableDefs("表1") 有问题
Set tdf = db.TableDefs("表1")
For Each fld In tdf.Fields
If fld.Type = 10 Then fld.Properties("UnicodeCompression") = True
Next
还可以尝试使用 sql 语句 或adox 的方法
Dim cn As ADODB.Connection
Set cn = CurrentProject.Connection
strSQL = "ALTER TABLE [Table] ADD COLUMN [Field] Text(40) WITH COMPRESSION"
cn.Execute strSQL
Dim TB As ADOX.Table
Dim FLD As ADOX.Column
For Each TB In Cat.Tables
If Left(TB.Name, 4) <> "msys" And TB.Name = "表1" Then ' ignore system tables
For Each FLD In TB.Columns
' only change Text & Memo fields
If FLD.Type = adVarWChar _
Or FLD.Type = adLongVarWChar Then
' FLD.Properties("Jet OLEDB:Allow Zero Length") = True
' 以下代码好像有问题,还是使用dao更好:
FLD.Properties("Jet OLEDB:Compressed UNICODE Strings") = True
End If
Next
End If
Next
MsgBox "Done"
- office使用部分控件时提示“您没有使用该ActiveX控件许可的问题”的解决方法
- RTF文件(富文本格式)的一些解析
- Access树控件(treeview) 64位Office下出现横向滚动条不会自动定位的解决办法
- Access中国树控件 在win10电脑 节点行间距太小的解决办法
- EXCEL 2019 64位版(Office 2019 64位)早就支持64位Treeview 树控件 ListView列表等64位MSCOMMCTL.OCX控件下载
- VBA或VB6调用WebService(直接Post方式)并解析返回的XML
- Access 或VBA 或VB6 使用 MS SOAP Toolkit 3.0 实现 SOAP Client客户端的功能
- MMC 不能打开文件C:/Program Files/Microsoft SQL Server/80/Tools/Binn/SQL Server Enterprise Manager.MSC 可能是由于文件不存在,不是一个MMC控制台,或者用后来的MMC版
- sql server连接不了的解决办法
- localhost与127.0.0.1区别
- Roych的浅谈数据库开发系列(Sql Server)
- sqlserver 自动备份对备份目录没有存取权限的解决办法
- 安装Sql server 2005 express 和SQLServer2005 Express版企业管理器 SQLServer2005_SSMSEE
- 解决Access数据库的Sql语句中 Top n 语句获取多条记录
联系人: | 王先生 |
---|---|
电话: | 13928102596 |
Email: | 18449932@qq.com |
QQ: | 18449932 |
微信: | 13928102596 |
微博: | officecn01 |