产生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类的实例.有了这个实例我们就可以生成对应的 ...
随机推荐
- appium+python自动化98-非select弹出选择框定位解决
前言 遇到问题:document.getElementsByClassName(...)[0] is undefined 选择框如果是select标签的,可以直接用select专用的方法去定位点击操作 ...
- Appium+python自动化21-DesiredCapabilities详解
Appium Desired Capabilities Desired Capabilities 是由 keys 和 values 组成的 JSON 对象. 举个简单例子: { "platf ...
- Jacob的使用出错总结
转自:http://blog.163.com/wm_at163/blog/static/13217349020114166447941/ Jacob的使用方法: 1.在工程中导入 jacob.jar ...
- Java 3D游戏引擎——JME(java Monkey Engine)
转自:http://bbs.gameres.com/forum.php?mod=viewthread&tid=180732 JME(java Monkey Engine),一个非常棒的Java ...
- 使用OllyDbg破解软件
好,废话不多说,教程开始. 我们首先查壳,是Aspark的壳,对于这个壳,大家应该很熟了.<ignore_js_op> 我已经脱好了壳,再查一下壳,是Dephi的<ignore ...
- FFmpeg的使用——PHP转换视频、截取视频以及JW Player播放器控制
转载:http://blog.csdn.net/zm2714/article/details/7916440 给朋友做的一个项目中,涉及到上传视频.转换视频.自动截取已上传视频内容中的一帧做为缩略图片 ...
- myeclipse发布项目到tomcat时项目名称与web应用名称不一致问题
工程名称原来为old,发布到tomcat webapps下后为old, 右键点击你的项目,然后选择重构---->重命名,项目名称改为new,但是发布名还是原来的名字.如果想让发布后的目录名为ne ...
- js 构造函数(construction)与原型(prototype)
1.面向对象:js原型 java有class和instance,js仅仅有构造函数(function Cat(name,age){this.name=name;this.age=age}),为了实现数 ...
- [Transducer] Make Transducer works for Iteratable collection and Object
We've seen how we can transduce from arrays or other iterables, but plain objects aren't iterable in ...
- (剑指Offer)面试题52:构建乘积数组
题目: 给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1].不能 ...