乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > 如何将Excel嵌入到VB中-vb嵌入excel,vb编辑excel

如何将Excel嵌入到VB中-vb嵌入excel,vb编辑excel

作者:乔山办公网日期:

返回目录:excel表格制作


开发工具,插入表单按钮控件即可:



将Excel数据嵌入到VB中,使他在VB的MDI窗体中,看起来就像VB的一部分,同时我也可以用代码对其进行读写
我用OLE把它嵌入到里面,不过每次双击以后,出来的Excel大小我无法控制e68a84e799bee5baa6e79fa5e98193361
(我不想用对象的方式来操作Excel,因为我要把编辑表格的界面提供给用户)

bas中:

Public XL As Excel.Application, xlHwnd As Long
Public
Declare Sub Sleep Lib "kernel32 " (ByVal dwMilliseconds As Long)

Public
Const WS_CAPTION As Long = &HC00000
Public Const SW_SHOW As Long = 5

Public Const WS_EX_APPWINDOW = &H40000
Public Const SW_SHOWMAXIMIZED
= 3
Public Const GWL_STYLE As Long = -16

Public Const GW_HWNDNEXT =
2

Public Declare Function GetWindowThreadProcessId Lib "user32 " (ByVal
hwnd As Long, lpdwProcessId As Long) As Long
Public Declare Function
GetParent Lib "user32 " (ByVal hwnd As Long) As Long
Public Declare Function
FindWindow Lib "user32 " Alias "FindWindowA " (ByVal lpClassName As String,
ByVal lpWindowName As String) As Long
Public Declare Function GetWindow Lib
"user32 " (ByVal hwnd As Long, ByVal wCmd As Long) As Long
Public Declare
Function GetWindowText Lib "user32 " Alias "GetWindowTextA " (ByVal hwnd As
Long, ByVal lpString As String, ByVal cch As Long) As Long
Public Declare
Function SetParent Lib "user32 " (ByVal hWndChild As Long, ByVal hWndNewParent
As Long) As Long

Public Declare Function SetWindowLong Lib "user32 "
Alias "SetWindowLongA " (ByVal hwnd As Long, ByVal nIndex As Long, ByVal
dwNewLong As Long) As Long
Public Declare Function GetWindowLong Lib "user32
" Alias "GetWindowLongA " (ByVal hwnd As Long, ByVal nIndex As Long) As Long

Public Declare Function ShowWindow Lib "user32 " (ByVal hwnd As Long, ByVal
nCmdShow As Long) As Long
Public Declare Function DrawMenuBar Lib "user32 "
(ByVal hwnd As Long) As Long

Public Const WS_SYSMENU = &H80000

Public Sub RemoveSysButton(ByVal hHwnd As Long)
Dim lWnd As Long

lWnd = GetWindowLong(hHwnd, GWL_STYLE)
lWnd = lWnd And Not (WS_SYSMENU)

lWnd = SetWindowLong(hHwnd, GWL_STYLE, lWnd)
DrawMenuBar hHwnd
End
Sub

Function InstanceToWnd(ByVal target_pid As Long) As Long
Dim
test_hwnd As Long
Dim test_pid As Long
Dim test_thread_id As Long

test_hwnd = FindWindow(ByVal 0&, ByVal 0&)

Do While
test_hwnd <> 0
If GetParent(test_hwnd) = 0 Then
test_thread_id =
GetWindowThreadProcessId(test_hwnd, test_pid)
If test_pid = target_pid Then

InstanceToWnd = test_hwnd
Exit Do
End If
End If
test_hwnd =
GetWindow(test_hwnd, GW_HWNDNEXT)
Loop
End Function

Public Sub
SetFormStyle(hwnd)
Dim IStyle As Long
IStyle = GetWindowLong(hwnd,
GWL_STYLE)
IStyle = IStyle And Not WS_CAPTION And Not WS_EX_APPWINDOW

SetWindowLong hwnd, GWL_STYLE, IStyle
ShowWindow hwnd, SW_SHOW

DrawMenuBar hwnd
End Sub
form中:

Set XL = CreateObject(
"excel.application ")
xlHwnd = FindWindow( "XLMAIN ", XL.Caption)

oldHwnd = GetParent(xlHwnd)

Call SetFormStyle(xlHwnd)

l =
SetParent(xlHwnd, Me.hwnd)

XL.Workbooks.Open FileName:= "要打开的文档 "

RemoveSysButton xlHwnd

XL.WindowState = xlNormal
XL.Height =
Me.Height / 20
XL.Width = Me.Width / 20
XL.Top = 0
XL.Left = 0

大体就是这样的,在此基础上再完善一下就达到要求了。
可能原因与解决办法:
这是因为Excel和如金山词霸、PDF阅览器等其他软件商的兼容性问题造成的,这些软件会自动在Excel中装插件、加载项,但是有时候不成功。
解决办法是,调出任务管理器结束相关进程即可解决。

1.部件-添加-可插入对象--选择excel 表格就可以在窗体添加该表格控件

2.工程-引用-Microsoft Excel 11.0 Object Library
下面e799bee5baa6e997aee7ad94e59b9ee7ad94338给个简单的例子
Private Sub Command1_Click()
Dim xlExcel As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Dim AppExcel As Object

Set xlExcel = CreateObject("Excel.Application")
xlExcel.Workbooks.Open "C:\test.xls"
Set xlBook = xlExcel.Workbooks("test.xls")
Set xlSheet = xlBook.Worksheets(1)
Text1.Text = xlSheet.Cells(1, 1).Value
Text1.Text = Text1.Text & "ADD"
xlSheet.Cells(1, 1).Value = Text1.Text
Application.DisplayAlerts = False
xlBook.Close SaveChanges:=True
Application.DisplayAlerts = True
End Sub

相关阅读

  • <em>VB</em> 读取、查找 <em>excel</em> 数据-

  • 乔山办公网excel表格制作
  • 先把excel文件放到指定的路径然后逐行读取最后赋值到list中VB查询excel里面的内容,ctrl+F" src="/uploads/tu/543.jpg" style="width: 400px; height: 267px;" />引用:添加对该对象的引用 工程菜单-->引用,
关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网