Exce表格网

vb编程如何将结果输出到指定excel的指定单元格(vb将数据写入excel)

来源:www.0djx.com  时间:2022-12-19 15:00   点击:328  编辑:表格网  手机版

1. vb将数据写入excel

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.如果录入的信息(姓名)在原来的表格在原来表格里面已经存在,则会弹出提示信息,之后进行选择。如果选择“是”则执行替换原来的信息;如果选择“否”,则会新增一行信息;如果选择“取消”,则不会录入信息。

2. vb怎么保存数据到文本中

private sub cmd_click()commondialog1.showopen '提示你选择保存文件的路径open "commondialog1.filename " for output as#1write#1,text1.textclose#1end subCOMMONDIALOG是通用对话框,这很常用,可以用来选择保存路径或者打开文件路径,这个控件得在vb的“工程”---“引用”里添加。

3. vb写数据到excel

首先需要知道你要引用的数据在Excel中的位置,然后在VB里面引用Excel,然后打开Excel文件读数据Dim scxls As Excel.ApplicationDim scbook As Excel.WorkbookDim scsheet As Excel.Worksheet‘Set scxls = CreateObject("excel.application")‘Set scbook = scxls.Workbooks.AddSet scbook = scxls.Workbooks.open("c:\1.xls"

)Set scsheet = scbook.Worksheets(1)‘scsheet.Cells(1, 2) = "1111" ’写入数据a=scsheet.Cells(1, 2) '读取数据Set scbook = NothingSet scxls = Nothing‘scxls.Visible = True ’显示Excle数据较多,且有规律可循时,请使用循环语句

4. vb从文件中读取数据

app.path是VB6中的用法.vb2010属于VB.Net,VB.Net中使用如下方法:Application.StartupPath'获取当前程序路径,如果你的程序在C:\App\,结果为C:\AppAppDomain.CurrentDomain.SetupInformation.ApplicationBase'获取当前程序路径,如果你的程序在C:\App\,结果为C:\App\'后者比前者的结果会多一个"\"

5. 用vbs把内容写入excel

多喽。

先说启动,一双击桌面的Excel快捷图标;二单击程序菜单里的图标;三进入Excel的安装文件夹,找到Excel.exe,双击运行;四,将Excel的桌面快捷图标拖动到程序文件夹的启动中,系统启动时让它与系统一起自动启动;五写一个批处理文件,内容是调用Excel.exe,双击此批处理文件启动它;六写一个VBS文件……不说了。

6. vb将数据写入excel单元格中

dim ii as string '定义一个变量为ii ii=1'设定ii的值为1 Dim ex1 As Object Dim exwbook As Object Dim exsheet As Object Set ex1 = CreateObject("excel.application"

) Set exwbook = Nothing Set exsheet = Nothing Set exwbook = ex1.Workbooks().Add Set exsheet = exwbook.Worksheets("sheet1") ex1.Visible = True '以上代码是运行excel并新建一个文档 ex1.Range("a" & ii).Value=textbox.text '把textbox中的数据逐条记录到EXCEL中的A列,一条记录一行 ii=val(ii)+1'每记录一条记录,excel行数+1当然你直接把上面的代码放到timer控件里是不行的,要灵活运用啊

7. VB将数据写入WORD

首先引用Microsoft Word 12.0 Object,具体版本根据你组的哪个office版本Dim wApp As Word.ApplicationDim wDoc As Word.DocumentSet wApp = New Word.ApplicationSet wDoc = wApp.Documents.Open(cDocName)上面是定义和打开Word文件赋值:wDoc.Shapes(i).TextFrame.TextRange.Text = Trim(Text5.Text)在那个打开的word文档中,预先加入多个文本框,上面是给其中某个文本框赋值wDoc.SaveAs tmpNamewDoc.ClosewApp.QuitSet wApp = Nothing这个是另存为和退出

8. vb文件写入

private

sub

command1_click()

dim

a()

as

string

dim

num

as

integer

a

=

split(text1.text,

vbcrlf)

'根据换行分割文本内容

num

=

ubound(a)

-

lbound(a)

'获取数组长度

for

i

=

0

to

num

step

1

'循环写入list1

list1.additem

(a(i))

next

i

end

sub

9. VB将数据写入数据库中用的是

1、Access中新建数据库,名字为Database1.mdb。(注意:后缀为MDB,如果Access是2007版本的,保存时应另存为03版本的才可以,因为,VB无法直接支持07版的accdb后缀格式)

2、成功建立数据库后会进入到数据表界面,这时就能输入数据了,输完以后按CTRL+S保存,输入表名,这里表名为test,准备工作这样就完成了。

3、把VB打开,然后新建标准exe。

4、在菜单里面找到工程→部件→勾选 ,Microsoft ADO Data Control 6.0 Microsoft Hierarchical Flexgrid Control 6.0勾选之后左侧的工具栏里就多出两个控件,就是 ADODC控件和MSHFlexGrid控件。

5、选择 ADODC控件和MSHFlexGrid控件,在窗体的合适位置放入,如图:

6、设置ADODC控件的属性:右键窗体中ADODC1控件

ADODC属性页→通用→选择使用连接字符串→点击生成→选择Microsoft Jet 4.0 OLE DB Provider 点击下一步→选择之前准备好的数据库→点击测试连接,显示测试成功则ok,确定。

ADODC属性页→记录源→命令类型选择2-adcmdtable,表或存储过程名称选择之前建立的数据表test,点击确定,ADODC属性设置完成。

7、设置MSHFlexGrid控件的属性:VB右侧的属性表里,找到datasource,选择adodc1。

8、测试效果:菜单→运行→启动(F5),发现显示的数据排列不是我们想要的行数和列数修改方法:

MSHFlexGrid属性→通用→设置行和列,固定行和固定列,设置如图。

MSHFlexGrid属性→带区→把列标题的√取消掉,设置如图。

9、修改之后测试效果如下:

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
用户名: 验证码:点击我更换图片