Excel VBA宏 链接服务器 上传和下载数据
首先说明以下。
第一: 下面的 “ _" 也就是 空格下划线 在VBA中表示换行的意思;& 表示链接连个字符串的操作,注意 & 的前后是否需要空格
第二: 如果链接服务器,服务器名称,账号,密码,或者SQL语句有问题,都会报错说自动化错误。
第三: 如果刚开始运行程序就显示”未定义对象错误“,那么你就需要 VBA界面的”工程--引用“中选择”Micsoft ActiveX data Objects 2.6“ 点击确定。
Sub 下载数据() Dim lastRow As Long, lastColumn As Long
lastRow = ActiveSheet.UsedRange.Rows.Count
lastColumn = ActiveSheet.UsedRange.Columns.Count 'MsgBox Split(Range("A1")(1, lastColumn).Address, "$")(1) If lastRow > Then
Range("a3:BL999") = "" '仅仅清空内容
Range("bo3:bo999") = "" 'Range("A2:I65536").ClearContents 也可以清楚内容
' ActiveSheet.Rows("3:" & lastRow).Delete 清楚了内容包括格式
End If
'MsgBox (Cells(10, 1).Value)
Dim conn As Object
'定义变量
Set conn = CreateObject("ADODB.Connection") '建立ADODB连接对象
conn.ConnectionString = "Driver={sql server};" _
& "server=你的服务器;" _
& "uid=;pwd=;" _
& "database=你的数据库;" _
& "AutoTranslate=False"
conn.Open '打开了和SQL的链接
mySql = " SELECT * FROM [dbo].[LEAD] ORDER BY [月],[周]" '写自己的SQL查询语句
Set rsData = New ADODB.Recordset '定义一个可以保存sql查询的对象集
Set rsData = conn.Execute(mySql) 'rsData.Open mySql, conn 可以实现相同的功能
'Worksheets("Sheet1").Range("A3").CopyFromRecordset rsData --一次性写入从A3开始的sheet1 工作中
Range("A3").CopyFromRecordset rsData '写出到当前激活的sheet中从A3开始
rsData.Close '养成好习惯,用完的东西要关闭哦~~~
Set rsData = Nothing
conn.Close
Set conn = Nothing
End Sub
Sub 上传数据()
'MsgBox (Cells(10, 1).Value)
Dim conn As Object
Set conn = CreateObject("ADODB.Connection") '建立ADODB连接对象 conn.ConnectionString = "Driver={sql server};" _
& "server=你的服务器;" _
& "uid=;pwd=;" _
& "database=你的数据库;" _
& "AutoTranslate=False"
Dim Sql1 As String, Sql2 As String
conn.Open '打开了和SQL的链接
For i = To
Sql = "INSERT INTO 表([V1],[V2]) VALUES ('" & Cells(i, ).Value & "','" & Cells(i, ).Value & "')"
'输出一条语句至文件
conn.Execute (Sql) '执行Sql 语句
Next '养成好习惯,用完的东西要关闭哦~~~
conn.Close
Set conn = Nothing
End Sub
Excel VBA宏 链接服务器 上传和下载数据的更多相关文章
- ftp链接、上传、下载、断开
开发环境:Jdk 1.8 引入第三方库:commons-net-2.2.jar(针对第一种方法) 一.基于第三方库FtpClient的FTP服务器数据传输 由于是基于第三方库,所以这里基本上没有太多要 ...
- FTP服务器上传,下载文件
public class FtpUtil { /** * * @param host FTP服务器地址 * @param port FTP服务器端口 * @param username FTP登录账号 ...
- 用SecureCRT来上传和下载数据
借助securtCRT,使用linux命令sz可以很方便的将服务器上的文件下载到本地,使用rz命令则是把本地文件上传到服务器. 其中,对于sz和rz的理解与记忆我用了如下的方法(很多时候容易搞混): ...
- SecureCRT学习之道:用SecureCRT来上传和下载数据
今天才知道,原来SecureCRT可以使用linux下的zmodem协议来快速的传送文件,而且还使用非常方便哦,我还傻傻的找其他软件来sftp,笨死了:(你只要设置一下上传和下载的默认目录就行opti ...
- Linux下vsftp服务器—上传、下载
一. FTP 说明 Linux下常用的FTP Server是vsftp(Very Security File Transfer Protocol),及profpt(Professtional ftp ...
- winform 利用Http向服务器上传与下载文件
利用在服务器端的IIS,布置“请求处理映射”.从而处理,本地发出Post请求.Url指向web网站所在路径的请求映射.由映射代码实现服务器保存文件. winform里面使用,WebClient的对象, ...
- 终端中管理SVN服务器 上传、下载、更新【原创】
从服务器下载项目, 下面的命令意思是 将服务器中mycode仓库的内容下载到/Users/apple/Documents/test目录中 我的电脑名叫做MacBook,记得将这个名字改成你们的电脑名字 ...
- linux下的服务器上传与下载
上传 scp 文件 用户名@服务器ip 服务器保存路径 例如:scp bookmarks_2019_6_24.html root@192.168.0.103:/home 下载 scp 用户名@服务器i ...
- java+服务器上传和下载文件
1.介绍enctype enctype 属性规定发送到服务器之前应该如何对表单数据进行编码. enctype作用是告知服务器请求正文的MIME类型(请求消息头content-type的作用一样) 1. ...
随机推荐
- 安装MySQL-python
安装MySQL-python 1. yum -y install mysql mysql-devel 2. yum -y install python-devel 3. pip install -i ...
- 【node.js】全局变量、常用工具、文件系统
学习链接:http://www.runoob.com/nodejs/nodejs-global-object.html 在 JavaScript 中,通常 window 是全局对象, 而 Node.j ...
- web常用的正则表达式
1. 平时做网站经常要用正则表达式,下面是一些讲解和例子,仅供大家参考和修改使用: 2. "^\d+$" //非负整数(正整数 + 0) 3. "^[0 ...
- socket编程小问题:地址已经被使用——Address already in use
很多socket编程的初学者可能会遇到这样的问题:如果先ctrl+c结束服务器端程序的话,再次启动服务器就会出现Address already in use这个错误,或者你的程序在正常关闭服务器端so ...
- Spring Cloud 微服务项目实现总架构一
Spring Cloud 服务是一种分布式服务,包括配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁,主节点选举, 分布式session, 集群状态等公共组件. 一 注册机 ...
- HO引擎近况20180111
明明想着10号更新了,怎么就忘了呢? 公司的项目又被砍了,几个同事被开,我又转到另外一下组了,难道真的是我到哪哪黄? 快过年了,今年公司年会就在附近,太好了不用想怎么编理由请假事了,还有可能中个奖品, ...
- Spring第二天——IOC注解操作与AOP概念
大致内容 spring的bean管理(注解实现) AOP原理 log4j介绍 spring整合web项目的演示 一.spring注解实现bean管理 注解: 代码中一些特殊的标记,使用注解也可以完成一 ...
- jQuery学习-显示与隐藏
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 4-[HTML]-body常用标签1
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Gitlab+Jenkins学习之路(六)之Jenkins部署、升级和备份
一.什么是持续集成? (1)Continuous integration(CI) 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员至少集成一次,也就意味着每天可能会发生多次集 ...