遍历列以执行操作

时间:2019-02-07 19:25:47

标签: excel vba

我有一个包含数据的电子表格,标题行位于第5行。我试图删除某些行,调整某些行的大小,并根据标题行(第5行)的名称对某些行应用过滤器。 / p>

我得到

  

“运行时错误'1004'应用程序定义的错误或对象定义的错误

在线

Rows(5).AutoFilter Field:=currentColumn, Criteria:="="

我的完整代码示例为:

Public Sub deleteCells()

Dim currentColumn As Integer
Dim columnHeading As String

ActiveSheet.Columns("AQ").Delete

For currentColumn = ActiveSheet.UsedRange.Columns.Count To 1 Step -1
columnHeading = ActiveSheet.UsedRange.Cells(5, currentColumn).Value


' CHECK WHETHER TO KEEP COLUMN
Select Case columnHeading
    Case "Personnel Number", "Subgroup", "Number", "Cost", "Name (repeated)", "Manager Name", "Customer Specific Status"
            ActiveSheet.Columns(currentColumn + 1).Delete
    Case "City"
    Rows(5).AutoFilter Field:=currentColumn, Criteria:="San Deigo"
    Case "Duties"
    Rows(5).AutoFilter Field:=currentColumn, Criteria:="=" ' TRYING TO EQUAL BLANKS
    Case Else
    Columns(currentColumn).ColumnWidth = 8 ' ALSO NOT SURE IF WILL TAKE A INT AS VALUE
    End Select
Next
'Added this line on an edit
End Sub

1 个答案:

答案 0 :(得分:1)

不幸的是,我没有您的数据,因此很难知道您在做什么,但是我确实尝试了类似的尝试,发现如果您替换

22:08:21,691 DEBUG        citrus.Citrus| Loading Citrus application properties
22:08:21,696 DEBUG        citrus.Citrus| Setting application property citrus.spring.java.config=com.grge.citrus.VCenterActorConfigSSL
22:08:22,025 DEBUG BeanDefinitionReader| Loaded 0 bean definitions from location pattern [classpath*:citrus-context.xml]
22:08:23,059 DEBUG    server.HttpServer| Starting server: vCenterServer ...
22:08:23,217 DEBUG CachingServletFilter| Initializing filter 'request-caching-filter'
22:08:23,220 DEBUG CachingServletFilter| Filter 'request-caching-filter' configured successfully
22:08:23,220 DEBUG et.GzipServletFilter| Initializing filter 'gzip-filter'
22:08:23,220 DEBUG et.GzipServletFilter| Filter 'gzip-filter' configured successfully
22:08:23,222 DEBUG rusDispatcherServlet| Initializing servlet 'vCenterServer-servlet'
22:08:23,241 INFO  rusDispatcherServlet| FrameworkServlet 'vCenterServer-servlet': initialization started
22:08:23,250 DEBUG rusDispatcherServlet| Servlet with name 'vCenterServer-servlet' will try to create custom WebApplicationContext context of class 'org.springframework.web.context.support.XmlWebApplicationContext', using parent context [null]
22:08:23,865 DEBUG rusDispatcherServlet| Unable to locate MultipartResolver with name 'multipartResolver': no multipart request handling provided
22:08:23,869 DEBUG rusDispatcherServlet| Unable to locate LocaleResolver with name 'localeResolver': using default [org.springframework.web.servlet.i18n.AcceptHeaderLocaleResolver@16fb356]
22:08:23,873 DEBUG rusDispatcherServlet| Unable to locate ThemeResolver with name 'themeResolver': using default [org.springframework.web.servlet.theme.FixedThemeResolver@1095f122]
22:08:23,894 DEBUG rusDispatcherServlet| No HandlerExceptionResolvers found in servlet 'vCenterServer-servlet': using default
22:08:23,896 DEBUG rusDispatcherServlet| Unable to locate RequestToViewNameTranslator with name 'viewNameTranslator': using default [org.springframework.web.servlet.view.DefaultRequestToViewNameTranslator@733c423e]
22:08:23,910 DEBUG rusDispatcherServlet| No ViewResolvers found in servlet 'vCenterServer-servlet': using default
22:08:23,915 DEBUG rusDispatcherServlet| Unable to locate FlashMapManager with name 'flashMapManager': using default [org.springframework.web.servlet.support.SessionFlashMapManager@681aad3b]
22:08:23,922 DEBUG rusDispatcherServlet| Published WebApplicationContext of servlet 'vCenterServer-servlet' as ServletContext attribute with name [org.springframework.web.servlet.FrameworkServlet.CONTEXT.vCenterServer-servlet]
22:08:23,922 INFO  rusDispatcherServlet| FrameworkServlet 'vCenterServer-servlet': initialization completed in 678 ms
22:08:23,923 DEBUG rusDispatcherServlet| Servlet 'vCenterServer-servlet' configured successfully
22:08:54,266 INFO     server.HttpServer| Started server: vCenterServer
22:08:54,362 INFO  port.LoggingReporter| 
22:08:54,362 INFO  port.LoggingReporter| ------------------------------------------------------------------------
22:08:54,362 INFO  port.LoggingReporter|        .__  __                       
22:08:54,362 INFO  port.LoggingReporter|   ____ |__|/  |________ __ __  ______
22:08:54,362 INFO  port.LoggingReporter| _/ ___\|  \   __\_  __ \  |  \/  ___/
22:08:54,362 INFO  port.LoggingReporter| \  \___|  ||  |  |  | \/  |  /\___ \ 
22:08:54,362 INFO  port.LoggingReporter|  \___  >__||__|  |__|  |____//____  >
22:08:54,362 INFO  port.LoggingReporter|      \/                           \/
22:08:54,362 INFO  port.LoggingReporter| 
22:08:54,363 INFO  port.LoggingReporter| C I T R U S  T E S T S  2.7.8
22:08:54,363 INFO  port.LoggingReporter| 
22:08:54,363 INFO  port.LoggingReporter| ------------------------------------------------------------------------
22:08:54,363 DEBUG port.LoggingReporter| BEFORE TEST SUITE
22:08:54,363 INFO  port.LoggingReporter| 
22:08:54,363 INFO  port.LoggingReporter| 
22:08:54,363 INFO  port.LoggingReporter| BEFORE TEST SUITE: SUCCESS
22:08:54,363 INFO  port.LoggingReporter| ------------------------------------------------------------------------
22:08:54,363 INFO  port.LoggingReporter| 
22:08:54,370 DEBUG t.TestContextFactory| Created new test context - using global variables: '{}'
22:08:54,370 INFO  port.LoggingReporter| 
22:08:54,370 INFO  port.LoggingReporter| ------------------------------------------------------------------------
22:08:54,370 DEBUG port.LoggingReporter| STARTING TEST SampleJavaDslTest <com.grge.citrus>
22:08:54,370 INFO  port.LoggingReporter| 
22:08:54,370 DEBUG      citrus.TestCase| Initializing test case
22:08:54,372 DEBUG  context.TestContext| Setting variable: citrus.test.name with value: 'SampleJavaDslTest'
22:08:54,372 DEBUG  context.TestContext| Setting variable: citrus.test.package with value: 'com.grge.citrus'
22:08:54,372 DEBUG      citrus.TestCase| Test variables:
22:08:54,372 DEBUG      citrus.TestCase| citrus.test.name = SampleJavaDslTest
22:08:54,372 DEBUG      citrus.TestCase| citrus.test.package = com.grge.citrus
22:08:54,373 INFO    actions.EchoAction| Hello from Java DSL!
22:08:54,493 INFO  port.LoggingReporter| 
22:08:54,493 INFO  port.LoggingReporter| TEST SUCCESS SampleJavaDslTest (com.grge.citrus)
22:08:54,493 INFO  port.LoggingReporter| ------------------------------------------------------------------------
22:08:54,493 INFO  port.LoggingReporter| 
Exception in thread "main" java.lang.NullPointerException
    at com.consol.citrus.dsl.testng.TestNGCitrusTestDesigner.getTestCase(TestNGCitrusTestDesigner.java:113)
    at com.grge.citrus.App.main(App.java:25)

Criteria:=... 

(注意1),那么它可能会起作用。

相关问题