|
楼主 |
发表于 2012-7-3 14:42
|
显示全部楼层
根据上楼代码的提示,加上自己的捉摸修改了下代码,基本上实现了这个功能,只不过还是与上面要求的有区别。希望能按原要求做出的兄弟们,给出一些建议。
上楼的代码与下面的代码结合基本能实现;仅参考
Private Sub 创建班级工作表_Click()
On Error Resume Next
Dim ws As Worksheet, sh As Worksheet
Dim i As Integer, j As Integer
For i = 1 To Worksheets.Count
If Worksheets(i).Name <> "首页" Then
Worksheets(i).Visible = True
End If
Next i
For j = 1 To m
Worksheets.Add after:=Worksheets(Worksheets.Count)
ActiveSheet.Name = class(j) & "成绩单"
Range("A1:M1").Select
Selection = Array("年级排名", "班级", "学号", "姓名", "性别", "数学", "语文", "英语", "物理", "化学", "生物", "体育", "总分")
Selection.HorizontAlignment = xlCenter
Columns("A:A").NumberFormatLocal = "@"
For i = 1 To n(j)
Set ws = Worksheets(class(j) & Space(1) & class(j, i))
If ws Is Nothing Then
Worksheets.Add after:=Worksheets(Worksheets.Count)
ActiveSheet.Name = class(j) & Space(1) & classname(j, i)
Range("A1:M1").Select
Selection = Array("班级排名", "年级排名", "学号", "姓名", "性别", "数学", "语文", "英语", "物理", "化学", "生物", "体育", "总分")
Selection.HorizontAlignment = xlCenter
Columns("A:A").NumberFormatLocal = "@"
End If
Next i
Next j
Application.DisplayAlerts = False
For Each ws In Worksheets
If ws.Name Like "Sheet*" Then
ws.Delete
End If
Next
Application.DisplayAlerts = True
Worksheets("首页").Activate
ActiveSheet.Range("A2").Select
End Sub
|
|