VB如何修改excel表格的内容?

Dim objExcel As Excel.Application
Dim objWorkBook As Excel.Workbook
Dim objSheet As Excel.Worksheet

Set objExcel = GetObject("Excel.Application")
Set objWorkBook = xlsApp.Workbooks.Open("F:\生产报表\8\" & Format(Now - 1, "yyyy.mm.dd") & "-" & Format(Now, "mm.dd") & ".xls")
objExcel.Visible = True
'设置活动工作表
Set objSheet = objExcel.Worksheets(1)
objSheet.Cells(4, 4) = "mother"
程序如上,修改无效,甚至打开文件都无效,关键是没有提示错误!!

Set xlapp = CreateObject("excel.application")

    Set xlbook = xlapp.Workbooks.Open("D:\RTM Record\RTM Tester" & Date & "\Statistics\SummaryLog_RTM_without_IXX_sample.csv")

    xlapp.Visible = False

    Set xlSheet = xlbook.Worksheets(1)

    ‘中间加你想要的操作

    xlbook.Close (True)

    xlapp.Quit

    Set xlapp = Nothing

    ’最后记得 要退出哦!

我想差异就在于   你的是getobject,我的是createobject,你改下试一下的吧,我一直是用这种方法!

希望对你有所帮助!

你再看下你的引用里面是否有选择下图上的选项!

追问

我刚开始用的是create,后面修改为getobject,都试过了。我怀疑与打开的方式有关,是不是只读属性,workbook。open,还是不行。

追答

Private Sub Command1_Click()
Dim xlapp, xlbook, xlSheet As Variant '调用打开文件的过程。
Set xlapp = CreateObject("excel.application")
Set xlbook = xlapp.Workbooks.Open("D:\1122.xls")
xlapp.Visible = False
Set xlSheet = xlbook.Worksheets(1)

xlapp.Cells(1, 1) = "RTM_Test"

xlbook.Close (True)
xlapp.Quit
Set xlapp = Nothing
End Sub
这个代码在我电脑上试过了,你试下看看,记得在引用里面选上excel哦!
你要先在D盘下建一个“1122.xls”的excel哦

追问

不知道是不是我打开excel后没有及时释放?反正就是写不进去,你的下面的评论可以,但是不知道wb是什么意思。用Windows内置的FTO。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-04-30
Sub t()
Dim FilesToOpen
Application.ScreenUpdating = False
Set wb = Workbooks.Open(Filename:="F:\生产报表\8\" & Format(Now - 1, "yyyy.mm.dd") & "-" & Format(Now, "mm.dd") & ".xls")
wb.Sheets(1).Cells(4, 4) = "m"
wb.Save
wb.Close
Application.ScreenUpdating = True
End Sub追问

试了试可以写,想请教wb是在哪儿定义的?filestoopen是什么意思?

本回答被提问者采纳

vb怎么打开Excel文件并向特定的单元格填写内容excelvb打开文件_百度知 ...
从\\"工程\\"菜单中选择\\"引用\\"栏;选择MicrosoftExcel 9.0 Object Library(EXCEL2000),然后选择\\"确定\\"。表示在工程中要引用EXCEL类型库。2、在通用对象的声明过程中定义EXCEL对象:Dim xlApp AsExcel.Application Dim xlBook As Excel.WorkBook Dim xlSheet AsExcel.Worksheet 3、在程序中操作EXCEL...

如何使用VB修改excel缺失值
第一步:选择 转换(transform) 如下图单击重新编码为相同变量。第二步: 选择要替换缺失值的变量 ,然后单击“旧值和新值”。第三步:单击“旧值和新值”出现下图 选择“系统或用户缺失”,在新值里输入“0” 单击下面的添加(add),然后单击“继续”就可以了。

如何批量修改多个excel文件内容?
打开 Excel,并打开你要批量修改的文件夹。在 Excel 中打开 VBA 编辑器。你可以通过按下 Alt + F11 快捷键来打开它。在 VBA 编辑器中,选择 "插入" 菜单,然后选择 "模块"。在新创建的模块中,复制并粘贴以下代码:vba复制代码 Sub批量修改Excel文件()Dim MyFolder As String Dim MyFile As Str...

excel中用vb批量修改工作表?
excel中用vb批量修改工作表,根据你的补充描述和图片信息来看,可以直接使用Excel自带的VBA功能来完成,只有你简单的懂一点就可以了。首先第一张表为总表,第二张表做一个模板表,如图一:具体操作步骤如下:1、按Alt+F11组合键进入VBA编辑器;2、依次单击“插入”--“模块”,在模块中进行书写代码,写...

VB如何更新一行EXCEL数据
打开一个Excel获取其中的数据。VB中用语句打开一个Excel获取其中的数据,并赋值给模块里的全局变量,如果修改了excel中的数据,再次读取文件,数据不会被更新。通过vbscript更新excel外部数据源,方式是connection.refresh方法。

Excel表格中3句vba代码如何实现被修改内容以蓝色呈现高亮显示
宏设置好了,假设我们要修改本工作簿中的第6个表的内容。我想让他高亮,颜色为蓝。我们按下面的步骤进行:先右击 进入vbe编辑器,在这里我们就能输入vba代码了。我们复制我们写好的代码进去或在这写 Private Sub Worksheet_Change(ByVal Target As Range)Target.Font.Color = vbBlue'vbblue代表高亮为...

VB如何修改excel表格的内容?
Set xlSheet = xlbook.Worksheets(1)‘中间加你想要的操作 xlbook.Close (True)xlapp.Quit Set xlapp = Nothing ’最后记得 要退出哦!我想差异就在于 你的是getobject,我的是createobject,你改下试一下的吧,我一直是用这种方法!希望对你有所帮助!你再看下你的引用里面是否有选择下图上的...

excel vb 批量修改各工作表相同单元格内容
按下ALT+ F11 ,菜单:插入-模块,复制下列代码.然后按F5运行 Sub number()Dim a As Integer a = Sheets.Count For x = 2 To a Sheets(x).Select Cells(1,2).NumberFormatLocal = "@"Cells(1,2)= Format(8000 + x - 1,"00000")Next End Sub ...

VBA根据提供数据替换多个excel表格内容?
这个不需要搬vba来,表格公式都可以做到,但是两种方法我都告诉你,先说简单的表格公式:如图:如果给出的数据在同一张工作簿中,即用第二张图的公式即可 如果给出的数据在另一张工作簿中,则用下图公式:下面介绍vb代码:在vba界面中写入代码:1 Sub 自动填入数据()2 '代码说明:将给出的数据自动...

如何用VB对多个EXCEL表格中的数值进行修改操作
建一新Excel,也存到该文件夹。仅打开该新Excel,同时按Alt和F11,点菜单的插入,模块,粘贴如下代码:Sub Find()Application.ScreenUpdating = False Dim MyDir As String MyDir = ThisWorkbook.Path & "\\"ChDrive Left(MyDir, 1) 'find all the excel files ChDir MyDir Match = Dir$("")...

相似回答