连笔字网 > 知识库

sheets,worksheets 与sheets有什么区别

来源:连笔字网 2023-12-12 06:15:40 作者:连笔君

worksheets 与sheets有什么区别

worksheets 与sheets区别:
1、worksheets是指你当前非活动表,而sheets是当前活动表
2、每个是Sheet是一个工作簿,各个sheet就构成了 sheets,也就是工作表了。如果你同时打开book1和book2,但你对book1进行操作的时候,book1所属的就可以写sheets,而book2就是worksheets。

Excel sheets和worksheets的区别

Sheets集合代表当前工作簿中的所有工作表,包括图表工作表、对话框工作表和宏表。

Worksheets集合仅代表当前工作簿中的所有工作表。

worksheets只代表工作表,仅第一个。sheets包括全部

Excel sheets和worksheets的区别

Sheets集合代表当前工作簿中的所有工作表,包括图表工作表、对话框工作表和宏表。

Worksheets集合仅代表当前工作簿中的所有工作表。

worksheets只代表工作表,仅第一个。sheets包括全部

VBA关于sheets和worksheets类型的区别

Sheets 对象
指定的或活动工作簿中所有工作表的集合。
说明
Sheets 集合可以包含 Chart(代表工作簿中的图表工作表) 或 Worksheet(代表一个工作表) 对象。
如果希望返回所有类型的工作表,Sheets 集合就非常有用。

Worksheets 对象
指定的或活动工作簿中所有 Worksheet 对象的集合。每个 Worksheet 对象都代表一个工作表。
说明
Worksheet 对象也是 Sheets 集合的成员。Sheets 集合包含工作簿中所有的工作表(图表工作表和工作表)。

求解:excel软件vba中,worksheets(1)与worksheets(“sheet1”)有什么区别?

worksheets(1)表示表格中第一个位置的工作表

worksheets(“sheet1”)指定了工作表名称为"sheet1"

EXCEL的VBA中,SHEETS的CELL和RANGE有什么区别?

1、主体不同

CELLS(y,x)的两个参数分别为行和列。

Range()则是指一个区域。

2、范围不同

CELLS(y,x)是单个单元格对像。

Range()可以是一个单元格,也可以是多个单元格。

3、赋值不同

Cells()是对一个单元格赋值。

而Range()则可以对一个区域的所有单元格赋值。

注意:VBA中“Range(cells(y1,x1),cells(y2,x2)).Select”,就是指选中以cells(y1,x1)和cells(y2,x2)两单元格为对角线的一个区域。

参考资料来源:

百度百科——range

使用Excel VBA,如何将某一个工作表保存到新建的Excel中。

代码如下:
Sub 分开存为工作薄()

Dim Sh As Worksheet
Dim Wk1 As Workbook
Dim Wk2 As Workbook
Dim iPath As String

Application.ScreenUpdating = False ‘将屏幕更新关闭
Application.DisplayAlerts = False

iPath = ThisWorkbook.Path & "\" '保存路径为当前工作簿所在路径
Set Wk1 = Workbooks.Add
Set Wk2 = Workbooks.Add
Wk1.SaveAs iPath & "部门" & ".xls"
Wk2.SaveAs iPath & "基层" & ".xls"
'将工作表分别复制到部门或基层工作薄中
For Each Sh In ThisWorkbook.Worksheets
With Sh
If .Name Like "*部门*" Then
.Copy before:=Workbooks("部门").Worksheets("sheet1")
ElseIf .Name Like "*基层*" Then
.Copy before:=Workbooks("基层").Worksheets("sheet1")
Else
MsgBox "工作表" & .Name & "不含有部门或基层"
End If
End With
Next
'删除新建工作薄时默认新建的工作表
For Each Sh In Wk1.Worksheets
With Sh
If .Name Like "*Sheet*" Then
.Delete
End If
End With
Next
For Each Sh In Wk2.Worksheets
With Sh
If .Name Like "*Sheet*" Then
.Delete
End If
End With
Next
'保存部门和基层工作薄
Wk1.Save
Wk2.Save
Wk1.Close
Wk2.Close
Set Wk1 = Nothing
Set Wk2 = Nothing
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
其中Application.DisplayAlerts、 Application.ScreenUpdating 语句把过程中的无必要的警告都删除了,像在删除多余的工作表时会提示“数据可能在你要删除的工作表中,请问是否要删除”等等的警告,在写程序的过程中可以写不加人,有利于了解工程是怎么运作的,但是最后还是加上这两句比较好,否则用户使用时太多的警告信息感觉不是很好。
.Copy before:=Workbooks("基层").Worksheets("sheet1")
此句是拷贝sheet到新的xls里,由于使用了with语句,前面的workbook的信息省略了,但是有copy before与copy after注意选择,具体区别自己也不是很清楚。Workbooks("基层").Worksheets("sheet1")拷贝到基层.xls的sheet1里,但是看到下面删除sheet时并没有把此表分别开,会不会出错?
以下是我自己的程序:
Set sht = newbk.Worksheets(1) '删除新建的newbk里的两个sheet,必须留一个,否则会出错
sht.Delete
Set sht = newbk.Worksheets(1)
sht.Delete
oldbk.Worksheets(sSheetName).Copy After:=newbk.Worksheets(1) '拷贝
Set sht = newbk.Worksheets(1) ’删除一个工作表,会删错么?
sht.Delete
newbk.Worksheets(1).Name = sSheetName
newbk.Save
拷贝处选用的是Worksheets(1),本想用Worksheets(sSheetName),但是系统出错,应该是新xls中没有此sheet,只有默认的1、2、3,所以出错。
对删除工作表的操作表示疑问,因为怕删错,Worksheets(1)是选择当前最前端的窗口,此程序测试正确,那么应该是新生成的没有作为active?
===============================================
所以拷贝时有3个问题:
1、copy before 与copy after的区别?
2、copy后新的名称是什么?
3、copy后的表是不是最前端的?

从网上看到的,可以对第一个问题很好的解释:
Sheets("mainREPORT").Copy Before:=Sheets(4)
after:是将表mainreport创建拷贝到‘4’表的后面
before:是将表mainreport创建拷贝到‘4’表的前面
是一个位置的问题

Excel vba在sheet里写代码和在模块里写有什么区别啊

1、部分代码必须方法模块中才会运行,如function过程

2、如果放到sheet中,代码如果没有指定父对象,默认当前表为要操作的工作表!

上一篇:设计网名的网站,用名字怎么设计网名

下一篇:没有了

相关阅读