产生sql语句的vba
//清除空列 Sub ClearNullMacro1()
Dim j As Integer
Dim colCount As Integer colCount = Cells(2, Columns.Count).End(xlToLeft).Column
For j = 1 To colCount
Dim v As String
v = Cells(2, j).value
' MsgBox v
If v = "" Then
Columns(j).Delete
Dim PauseTime
PauseTime = Timer + 1.5
colCount = Cells(2, Columns.Count).End(xlToLeft).Column
End If
Next MsgBox "successed" & Cells(2, Columns.Count).End(xlToLeft).Column
End Sub //创建sql语句
Sub GenerateSqlMacro1()
For Each Sh In Worksheets
Dim j As Integer
Dim colCount As Integer
Dim keys As String
Dim values As String colCount = Sh.Cells(2, Columns.Count).End(xlToLeft).Column
For j = 1 To colCount
keys = keys & Sh.Cells(1, j).value & ", " & Chr(10)
values = values & "'" & Sh.Cells(2, j).value & "', " & Chr(10)
Next Sh.Cells(5, 1).value = "insert into " & Sh.Name & "(" & Chr(10) & keys & ")"
Sh.Cells(7, 1).value = "values (" & Chr(10) & values & ")" keys = ""
values = ""
Next MsgBox "successed"
End Sub
//替换星
Sub HandleXing() For Each Sh In Worksheets
Dim j As Integer
Dim colCount As Integer
Dim keys As String
Dim values As String
Dim parms As String colCount = Sh.Cells(2, Columns.Count).End(xlToLeft).Column
For j = 1 To colCount keys = keys & Sh.Cells(1, j).value & ", " & Chr(10) If InStr(Sh.Cells(2, j).value, "*") <= 0 Then
values = values & "'" & Sh.Cells(2, j).value & "', " & Chr(10)
Else
Dim value As String
value = Replace(Sh.Cells(2, j).value, "*", "@")
values = values & value & ", " & Chr(10)
parms = parms & "declare " & value & " nvarchar(200) " & Chr(10)
End If Next Sh.Cells(11, 1).value = "insert into " & Sh.Name & "(" & Chr(10) & keys & ")"
Sh.Cells(12, 1).value = "values (" & Chr(10) & values & ")"
Sh.Cells(13, 1).value = parms
keys = ""
values = ""
parms = ""
Next MsgBox "successed"
End Sub
产生sql语句的vba的更多相关文章
- 在Access中批量调用SQL语句
access的SQL视图一次只能执行一条SQL语句,那么在VBA中调用或许可以简便一些 例如: Public Sub 批量()Dim strsql As String strsql = " ...
- 在EXCEL中使用SQL语句查询
SQL语句在数据库使用中十分重要. 在EXCEL中可以不打开工作簿,就获取数据,对多工作簿操作很用,也很快. 对大量数据处理,比循环快很多,但是比词典方法还有点距离(可惜我还没有学会词典). 对数据库 ...
- 个人永久性免费-Excel催化剂功能第21波-Excel与Sqlserver零门槛交互-执行SQL语句篇
在前两波中,已完成了Excel与Sqlserver的查询和上传功能,但难免许多临时的或更深入地操作数据库需要用Sql语句来操作,对一般用户电脑里,不可能有条件轻易安装一个数据库客户端软件,就算安装了对 ...
- mysql学习之 sql语句的技巧及优化
一.sql中使用正则表达式 select name,email from user where email Regexp "@163[.,]com$"; sql语句中使用Regex ...
- 一条Sql语句分组排序并且限制显示的数据条数
如果我想得到这样一个结果集:分组排序,并且每组限定记录集的数量,用一条SQL语句能办到吗? 比如说,我想找出学生期末考试中,每科的前3名,并按成绩排序,只用一条SQL语句,该怎么写? 表[TScore ...
- LINQ to SQL语句(7)之Exists/In/Any/All/Contains
适用场景:用于判断集合中元素,进一步缩小范围. Any 说明:用于判断集合中是否有元素满足某一条件:不延迟.(若条件为空,则集合只要不为空就返回True,否则为False).有2种形式,分别为简单形式 ...
- Oracle ------ SQLDeveloper中SQL语句格式化快捷键
Oracle SQL Developer中SQL语句格式化快捷键: 每次sql复制到SQL Developer面板的时候,格式老不对,而且看起来很不舒服,所有的sql都挤在一行完成. 这时我们可以全选 ...
- SQL语句优化
(1) 选择最有效率的表名顺序 ( 只在基于规则的优化器中有效 ) : ORACLE 的解析器按照从右到左的顺序处理 FROM 子句中的表名, FROM 子句中写在最后的表 ( 基础表dri ...
- LinqToDB 源码分析——生成与执行SQL语句
生成SQL语句的功能可以算是LinqToDB框架的最后一步.从上一章中我们可以知道处理完表达式树之后,相关生成SQL信息会被保存在一个叫SelectQuery类的实例.有了这个实例我们就可以生成对应的 ...
随机推荐
- 加载大量的xml数据 使用压缩方法解决(当然较小时也可以压缩)
如果你的应该程序必须在运行期间加载一个外部大且冗长的XML文件时,这个方案可能是有用的,通过将XML保存为二进制,你可以压缩数据得到一个较小的文件,当然,你可以得到的压缩的数量取决于数据的复杂性,但它 ...
- 安卓源码下载 windows
git clone https://android.googlesource.com/name Name Descriptionaccessories/manifest device/asus/deb ...
- IIS - 无后缀(无扩展名)的MIME类型配置
添加一个新的 MIME 类型即可. 文件扩展名:. MIME类型:application/octet-stream
- 关于Predicate<T>委托
Predicate<T>委托在.NET类类库中经常出现,此委托的定义如下: public delegatebool Predicate<T>(T obj); 从其定义可以看到, ...
- flex创建hashMap
1,定义hashMap的接口. import flash.events.IEventDispatcher; import mx.events.CollectionEvent; /** * Dispa ...
- 出现"未将对象引用设置到对象的实例“问题的总结
今天做机房收费系统时,将DataGridView中的数据导入到Excel中,当运行到这一句代码”xlApp.Cells(rows + 2, j + 1) = DataGridView1(j, rows ...
- 前端如何接收 websocket 发送过来的实时数据
WebSocket protocol 是HTML5一种新的协议,它实现了浏览器与服务器全双工通信(full-duple).刚开始的握手需要借助HTTP请求完成,在 WebSocket API,浏览器和 ...
- STL栈的应用之表达式求值
#include<iostream> #include<cstring> #include<cstdio> #include<stack> using ...
- windows curl ssl版本号编译
编译curl-ssl版本号碰到非常多坑,这里记录一下.亲手測试,注意版本号号!! ! !. 1.下载 curl-7.43.0 libssh2-1.3.0 openssl-1.0.0s Act ...
- java防止sql注入
public final static String filterSQLInjection(String s) { if (s == null || "".equals(s)) { ...