Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 4066|回复: 14

[已解决]VBA语句看不懂,求助!

  [复制链接]
发表于 2011-8-10 19:02 | 显示全部楼层 |阅读模式
哪位大虾能帮帮忙,看看下面语句是什么意思,最好能用中文语句表达:
Sheets("F.L' BOAT").Select
    Rows("1:1").Select
    Range("C1").Activate
    Rows("1:109").Select
    Range("C1").Activate
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Sheets("A.L'BOAT").Select
    Rows("1:1").Select
    Range("C1").Activate
    Rows("1:109").Select
    Range("C1").Activate
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    'Cells.Select
    'Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Sheets("POB").Select
    ActiveWorkbook.Save
最佳答案
2011-8-11 13:49
本帖最后由 zjdh 于 2011-8-11 13:52 编辑

如果这么简单的宏都看不懂的话,要扩展怕也难!先给你解释一下:
    Sheets("F.L' BOAT").Select   '选择(激活)工作表"F.L' BOAT"
    Rows("1:1").Select    '多余操作   
    Range("C1").Activate    '多余操作
    Rows("1:109").Select   '选择1:109行
    Range("C1").Activate   '多余操作
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom    '按A列升序排序(带标题行)
    Sheets("A.L'BOAT").Select   '选择(激活)工作表"A.L'BOAT"
    Rows("1:1").Select    '多余操作
    Range("C1").Activate   '多余操作
    Rows("1:109").Select    '选择1:109行
    Range("C1").Activate    '多余操作
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom    '按A列升序排序(带标题行)
    'Cells.Select    '已注销   
    'Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom    '已注销
    Sheets("POB").Select   '选择(激活)工作表"POB"
    ActiveWorkbook.Save       '文件保存

POB.rar

32.96 KB, 下载次数: 11

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2011-8-10 19:26 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2011-8-10 19:28 | 显示全部楼层
回复 zjdh 的帖子

如果看得懂帮忙解释下呗,那几句我看不懂。因为那个表我要扩展,如果那个不懂的话,没无扩展!
回复

使用道具 举报

发表于 2011-8-10 19:31 | 显示全部楼层
楼主要不先试试这个:http://www.excelpx.com/thread-186721-1-1.html
回复

使用道具 举报

发表于 2011-8-10 19:43 | 显示全部楼层
建议您听下VBA教程
回复

使用道具 举报

发表于 2011-8-11 09:04 | 显示全部楼层
回复 goodlaugh 的帖子

对于录制的宏,先把宏保存了,然后把你刚才的操作撤消了

打开代码窗口,调小窗口,最好和工作表窗口并排,然后用F8测试,

每按一下,注意观察工作表的变化,多测试几次就知道这些代码是什么意思了

如果你再下载一个《有道》字典来配合着学习的话,效果更好!!
回复

使用道具 举报

发表于 2011-8-11 10:35 | 显示全部楼层
对,有时间看看蓝版的VBA教程,讲的很不错!
回复

使用道具 举报

发表于 2011-8-11 13:49 | 显示全部楼层    本楼为最佳答案   
本帖最后由 zjdh 于 2011-8-11 13:52 编辑

如果这么简单的宏都看不懂的话,要扩展怕也难!先给你解释一下:
    Sheets("F.L' BOAT").Select   '选择(激活)工作表"F.L' BOAT"
    Rows("1:1").Select    '多余操作   
    Range("C1").Activate    '多余操作
    Rows("1:109").Select   '选择1:109行
    Range("C1").Activate   '多余操作
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom    '按A列升序排序(带标题行)
    Sheets("A.L'BOAT").Select   '选择(激活)工作表"A.L'BOAT"
    Rows("1:1").Select    '多余操作
    Range("C1").Activate   '多余操作
    Rows("1:109").Select    '选择1:109行
    Range("C1").Activate    '多余操作
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom    '按A列升序排序(带标题行)
    'Cells.Select    '已注销   
    'Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom    '已注销
    Sheets("POB").Select   '选择(激活)工作表"POB"
    ActiveWorkbook.Save       '文件保存
回复

使用道具 举报

 楼主| 发表于 2011-8-12 14:41 | 显示全部楼层
回复 zjdh 的帖子

非常感谢你啦!我是自学这个,由入门不是很懂,让你见笑啦!那个段VBA是前人编的,我要进行修正,又不敢轻易删除某段话,怕表格会出现错误。下面是整个修改前的一段VBA:
Sub Macro1()
' FPSO POB List
    Range("A3:L115").Select
    Selection.Copy
    Sheets("F.L' BOAT").Select
    Range("A3").Select
    ActiveSheet.Paste
    Selection.AutoFilter Field:=8, Criteria1:="F"
    Sheets("POB").Select
    Range("A3:L115").Select
    Selection.Copy
    Sheets("A.L'BOAT").Select
    Range("A3").Select
    ActiveSheet.Paste
    Selection.AutoFilter Field:=8, Criteria1:="A"
    Sheets("F.L' BOAT").Select
    Rows("1:1").Select
    Range("C1").Activate
    Rows("1:116").Select
    Range("C1").Activate
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Sheets("A.L'BOAT").Select
    Rows("1:1").Select
    Range("C1").Activate
    Rows("1:116").Select
    Range("C1").Activate
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
   
    'Cells.Select
    'Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Sheets("POB").Select
    ActiveWorkbook.Save
    'Sheets(Array("POB", "F.L'BOAT", "A.L'BOAT")).Select
    'ActiveWindow.SelectedSheets.PrintOut Copies:=1
    'Sheets("POB").Select
   
    ' 页眉设置 Macro
'
    t = Sheets("POB").Cells(130, 4)
    t = Format(t, "mmm-dd-yyyy")
    With ActiveSheet.PageSetup
        .CenterHeader = _
        "&""Book Antiqua,Regular""&18FPSO""NANHAISHENGLI""&""Arial,Regular""&10" & Chr(10) & "&""Book Antiqua,Regular""&11PERSONNEL ONBOARD" & Chr(10) & t
   
    End With
    Sheets("F.L' BOAT").Select
    With ActiveSheet.PageSetup
        .CenterHeader = _
        "&""Book Antiqua,Regular""&18FPSO""NANHAISHENGLI""&""Arial,Regular""&10" & Chr(10) & "&""Book Antiqua,Regular""&11FORWARD LIFEBOAT" & Chr(10) & t
    End With
    Sheets("A.L'BOAT").Select
    With ActiveSheet.PageSetup
        .CenterHeader = _
        "&""Book Antiqua,Regular""&18FPSO""NANHAISHENGLI""&""Arial,Regular""&10" & Chr(10) & "&""Book Antiqua,Regular""&11AFT LIFEBOAT" & Chr(10) & t
    End With
   
    '
' Macro4 Macro

    Sheets("CARD").Select
    ActiveWindow.SmallScroll Down:=45
    Range("B2:B92").Select
    ActiveWindow.SmallScroll Down:=-57
    Selection.ClearContents
'
    Sheets("F.L' BOAT").Select
    Range("A3:A115").Select
    Selection.Copy
    Rows("1:115").Select
    Sheets("CARD").Select
    Range("B2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    ActiveWindow.SmallScroll Down:=27
    Sheets("A.L'BOAT").Select
    Range("A6:A115").Select
    Application.CutCopyMode = False
    Selection.Copy
    Rows("1:115").Select
    Sheets("CARD").Select
    Range("B55").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    ActiveWindow.SmallScroll Down:=-36
    Application.CutCopyMode = False
   
    'Sheets(Array("POB", "F.L'BOAT", "A.L'BOAT")).Select
    'ActiveWindow.SelectedSheets.PrintOut Copies:=1
    'Sheets("POB").Select
    Sheets("POB").Select
    ActiveWorkbook.Save
    Sheets("POB").Select

     
End Sub

按你的话,我大胆进行了修改为:
Sub Macro1()
' FPSO POB List
    Range("A3:L115").Select
    Selection.Copy
    Sheets("F.L' BOAT").Select
    Range("A3").Select
    ActiveSheet.Paste
    Selection.AutoFilter Field:=8, Criteria1:="F"
    Sheets("POB").Select
    Range("A3:L115").Select
    Selection.Copy
    Sheets("A.L'BOAT").Select
    Range("A3").Select
    ActiveSheet.Paste
    Selection.AutoFilter Field:=8, Criteria1:="A"
    Sheets("F.L' BOAT").Select
    Rows("1:116").Select
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Sheets("A.L'BOAT").Select
    Rows("1:116").Select
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
   
    'Cells.Select
    'Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
        
    ' 页眉设置 Macro

'
    t = Sheets("POB").Cells(130, 4)
    t = Format(t, "mmm-dd-yyyy")
    With ActiveSheet.PageSetup
        .CenterHeader = _
        "&""Book Antiqua,Regular""&18FPSO""NANHAISHENGLI""&""Arial,Regular""&10" & Chr(10) & "&""Book Antiqua,Regular""&11PERSONNEL ONBOARD" & Chr(10) & t
   
    End With
    Sheets("F.L' BOAT").Select
    With ActiveSheet.PageSetup
        .CenterHeader = _
        "&""Book Antiqua,Regular""&18FPSO""NANHAISHENGLI""&""Arial,Regular""&10" & Chr(10) & "&""Book Antiqua,Regular""&11FORWARD LIFEBOAT" & Chr(10) & t
    End With
    Sheets("A.L'BOAT").Select
    With ActiveSheet.PageSetup
        .CenterHeader = _
        "&""Book Antiqua,Regular""&18FPSO""NANHAISHENGLI""&""Arial,Regular""&10" & Chr(10) & "&""Book Antiqua,Regular""&11AFT LIFEBOAT" & Chr(10) & t
    End With
   
    '
' Macro4 Macro
'
    Sheets("CARD").Select
    ActiveWindow.SmallScroll Down:=45
    Range("B2:B92").Select
    ActiveWindow.SmallScroll Down:=-57
    Selection.ClearContents
'
    Sheets("F.L' BOAT").Select
    Range("A3:A115").Select
    Selection.Copy
    Sheets("CARD").Select
    Range("B2").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    ActiveWindow.SmallScroll Down:=27
    Sheets("A.L'BOAT").Select
    Range("A6:A115").Select
    Application.CutCopyMode = False
    Selection.Copy
    Rows("1:115").Select
    Sheets("CARD").Select
    Range("B55").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    ActiveWindow.SmallScroll Down:=-36
    Application.CutCopyMode = False
   
    'Sheets(Array("POB", "F.L'BOAT", "A.L'BOAT")).Select
    'ActiveWindow.SelectedSheets.PrintOut Copies:=1
    'Sheets("POB").Select
    Sheets("POB").Select
    ActiveWorkbook.Save
    Sheets("POB").Select

     
End Sub




回复

使用道具 举报

发表于 2011-11-10 18:36 | 显示全部楼层
看看,学习学习......
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-27 12:05 , Processed in 0.401750 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表