1. vba写入数据库
cells(1,1)="=sum(B1:B10)" '在单元格A1中写入求和公式
你要的是数组公式是吧
cells(1,1).FormulaArray ="你的数组公式"
2. 用vba做数据库
建议Excelhome论坛问,那里可以上传附件,大神看见了会直接给你改一个。Sub 导入数据() Workbooks.Open Filename:= _ "C:\Users\Administrator\Desktop\新建文件夹 (2)\新建 Microsoft Excel 工作表.xls" Range("A1:BK2359").Select Selection.Copy Windows("Book1.xlsx").Activate Range("B2").Select ActiveSheet.Paste Workbooks("新建 Microsoft Excel 工作表.xls").CloseEnd Sub自己看看改改吧
3. vba录入数据
1.在Excel表格表格的菜单栏上面点击【开发工具】,【Visual Basic】打开VBA编辑器。
2.在VBA编辑器的菜单栏上面点击【插入】,【模块】。
3.在代码框里面输入一下代码:
Sub MatchIput()
Dim i, j, m, k As Long '数据类型定义
Dim msg, style, title, ans
On Error Resume Next '如果运行过程中出错,则忽略
Set mysheet1 = ThisWorkbook.Worksheets("Sheet1") '定义工作表
Set mysheet2 = ThisWorkbook.Worksheets("Sheet2") '定义工作表
msg = "该用户信息已经存在,是否替换?"
style = vbYesNoCancel + vbDefaultButton3 '显示 “是” “否” “取消”三个按钮
title = "温馨提示"
m = Application.WorksheetFunction.Match(mysheet1.Cells(2, 2), mysheet2.Range("A1:A1000"), 0)
'计算单元格所在的位置
If m >= 1 Then '如果数据表里面已经存在,则弹出提示窗口,然后进行选择
ans = MsgBox(msg, style, title) '弹出提示
If ans = vbYes Then '如果选择“是”,则原来表格里面的数据将会被替换
For j = 1 To 4 '填充该单元格所在位置的1-4列
mysheet2.Cells(m, j) = mysheet1.Cells(j + 1, 2)
Next
End If
If ans = vbNo Then '如果选择“否”,则在原来表格里面找到空白的单元格写入
For k = 2 To 1000
If mysheet2.Cells(k, 1) = "" Then
For j = 1 To 4
mysheet2.Cells(k, j) = mysheet1.Cells(j + 1, 2)
Next
Exit For
End If
Next
End If
Else '如果不存在,则在原来数据表格里面找到一行空白进行填充
For k = 2 To 1000
If mysheet2.Cells(k, 1) = "" Then
For j = 1 To 4
mysheet2.Cells(k, j) = mysheet1.Cells(j + 1, 2)
Next
Exit For
End If
Next
End If
End Sub
4.回到Sheet1工作表界面,点击菜单栏上面的【插入】,在形状里面选择“矩形”插入到表格上面,然后填充所需的颜色、文字。
5.在已经绘制后的矩形图上面单击右键,选择“指定宏”。
6.在“指定宏”对话框里面选择已经编写的VBA名称,如:MatchIput。
7.在要录入信息的区域录入信息,然后点击“录入”即可录入信息。
8.如果录入的信息(姓名)在原来的表格在原来表格里面已经存在,则会弹出提示信息,之后进行选择。如果选择“是”则执行替换原来的信息;如果选择“否”,则会新增一行信息;如果选择“取消”,则不会录入信息。
4. vba写入excel
使用HorizontalAlignment属性控制水平对齐,此属性的值可设为以下常量之一:
xlCenter xlDistributed xlJustify xlLeft xlRight 使用VerticalAlignment属性控制垂直对齐,此属性的值可设为以下常量之一:xlBottom xlCenter xlDistributed xlJustify xlTop 例如下面的代码使选中部分水平居中、垂直居中:Sub 宏1() With Selection .HorizontalAlignment = xlCenter .VerticalAlignment = xlCenter End WithEnd Sub
5. vba数据库编程
不知道楼主是不是想自己制作这样的表格。一般来说,进销存工具包含以下几个基本功能,采购入库、销售出库、库存(根据入出库自动计算),成本(移动平均法核算)、利润(销售金额减去成本价)、统计(日报月报)、查询(入出库)履历。其他扩展内容诸如品名、规格、重量、体积、单位等也要有。主要的难点是在自动统计库存上。根据行业不同,可能具体条目会有点变化。一般的做法是用到数据透视表,但如果数据量大会严重影响速度。采用VBA是比较好的,速度不收影响。如果你自己做,没有相当的编程知识,估计你做不出来,我建议你去找北京富通维尔科技有限公司的网站,里面有用VBA开发的Excel工具,很多个版本,当然也有免费的下载。
6. vba读取数据库数据
我想要输出这样的一种格式,即每个提取的Excel文件对应一列数据,但是这个程序提取出来的数据都在一列,关键是把空值都去掉了(这样我很难区每一天的数据),这应该怎样解决啊
7. excel vba 导入数据库
这个用VBA来做就很简单了,之前做过一个小例子,虽然表格结构和题主给的不相同,但是需求和结果是差不多的:
这个例子的效果也是,讲一张表种的数据,按照不同的品种,拆分到数个表格当中,所拆分的表格结构是相同的。
用VBA实现自动化的好处还在于,方便以后调用,可谓一劳永逸。此外,拓展性也很强,题主不是要打印吗,用VBA也可以实现拆分后的自动打印或者发送邮件之类的。大大减少工作量,还能提高准确率。
8. vba操作mysql数据库
直接在excel中使用vba连接mysql数据库,把excel中的内容写入mysql数据库中
9. vba操作sql数据库
例如;远程SQLSERVER 连接字符串为: Provider=SQLOLEDB.1;Password=密码;Persist Security Info=True;User ID=用户名;Initial Catalog=数据库名称Data Source=远程主机IP
10. VBA连接数据库
方法如下步骤操作:
1、打开VBA编辑器,在菜单中点选“工具”,“引用”;
2、确保“Microsoft ActiviteX Data Objects 2.8 Library”和“Microsoft ActiviteX Data ObjectS Recordset 2.8 Library”被勾选上。
建立连接过程,代码如下:
复制代码代码如下:
Public Sub ConOra()
On Error GoTo ErrMsg:
Dim ConnDB As ADODB.Connection
Set ConnDB = New ADODB.Connection
Dim ConnStr As String
Dim DBRst As ADODB.Recordset
Set DBRst = New ADODB.Recordset
Dim SQLRst As String
Dim OraOpen As Boolean
OraOpen = False
OraID="Orcl" 'Oracle数据库的相关配置
OraUsr="user"
OraPwd="password"
ConnStr = "Provider = MSDAORA.1;Password=" & OraPwd & _
";User ID=" & OraUsr & _
";Data Source=" & OraID & _
";Persist Security Info=True"
ConnDB.CursorLocation = adUseServer
ConnDB.Open ConnStr
OraOpen = True '成功执行后,数据库即被打开
'MsgBox "Connect to the oracle database Successful!", vbInformation, "Connect Successful"
DBRst.ActiveConnection = ConnDB
DBRst.CursorLocation = adUseServer
DBRst.LockType = adLockBatchOptimistic
SQLRst = "Select * From TstTab"
DBRst.Open SQLRst, ConnDB, adOpenStatic, adLockBatchOptimistic
DBRst.MoveFirst
Exit Function
ErrMsg:
OraOpen = False
MsgBox "Connect to the oracle database fail ,please check!", vbCritical, "Connect fail!"
End Function
Public Sub ConOra()
On Error GoTo ErrMsg:
Dim ConnDB As ADODB.Connection
Set ConnDB = New ADODB.Connection
Dim ConnStr As String
Dim DBRst As ADODB.Recordset
Set DBRst = New ADODB.Recordset
Dim SQLRst As String
Dim OraOpen As Boolean
OraOpen = False
OraID="Orcl" 'Oracle数据库的相关配置
OraUsr="user"
OraPwd="password"
ConnStr = "Provider = MSDAORA.1;Password=" & OraPwd & _
";User ID=" & OraUsr & _
";Data Source=" & OraID & _
";Persist Security Info=True"
ConnDB.CursorLocation = adUseServer
ConnDB.Open ConnStr
OraOpen = True '成功执行后,数据库即被打开
'MsgBox "Connect to the oracle database Successful!", vbInformation, "Connect Successful"
DBRst.ActiveConnection = ConnDB
DBRst.CursorLocation = adUseServer
DBRst.LockType = adLockBatchOptimistic
SQLRst = "Select * From TstTab"
DBRst.Open SQLRst, ConnDB, adOpenStatic, adLockBatchOptimistic
DBRst.MoveFirst
Exit Function
ErrMsg:
OraOpen = False
MsgBox "Connect to the oracle database fail ,please check!", vbCritical, "Connect fail!"
End Function
可以根据需要调整SQL语句,获取相关数据,并输出到Excel完成数据处理
11. VBA建立数据库
sub test()Set cnn = CreateObject("ADODB.Connection") Set rs = CreateObject("Adodb.Recordset")strCn= "Provider=sqloledb;Server=R9HDET7;Database=dbname;Uid=username;Pwd=password" cnn.Open strCn SQL = "" cnn.Open strCn '与数据库建立连接,如果成功,返回连接对象cn rs.Open SQL , cn '执行strSQL所含的SQL命令,结果保存在rs记录集对象中 cnn.Close Set cnn = Nothingend sub
请参考
连接数据库后,通过写SQL语句实现增删改查
- 相关评论
- 我要评论
-