小编dom*_*176的帖子

发布一个带有在工作表中找到的日期的变量

目前我正在尝试将变量声明为我从excel中的工作表中提取的日期,然后使用该声明的日期作为基准,以便我可以删除大于它的所有内容.我认为我的代码对于这个任务是可靠的,但我一直有的问题是当我查看我的日期被宣布为而不是2015年1月12日,因为它应该在凌晨12:00:00出现并且它取代了我从中提取日期的单元格的内容.这是我到目前为止的代码......

Sub Remove_Unecessary_Data_1()

Dim ALLCs As Worksheet
Dim DS As Worksheet
Dim Dailystring As String
Dim Blank As String
Dim finaldate As Date


Dailystring = " - Daily"
Blank = ""

Set DS = Sheets("Data Summary")
Set ALLCs = Sheets("Asset LLC (Input)")



    ALLCs.Select
        For y = 1 To 40
           If InStr(1, Allcs.Cells(13, y), "Timestamp of Execution") Then
                finaldate = Allcs.Cells(50, y)
            End If
        Next

    ALLCs.Select
        For u = 1 To 40
            If InStr(1, Allcs.Cells(13, u), "Start Date") Then
                For p …
Run Code Online (Sandbox Code Playgroud)

excel time vba date excel-vba

0
推荐指数
1
解决办法
353
查看次数

一段代码仅在多次运行时按预期工作

目前我正在调试一段代码.目前我的代码按预期工作,它为finaldate变量分配日期,然后在代码中查找删除高于finaldate变量的所有日期.唯一的问题是子程序需要多次运行才能使其生效.例如,当我删除大约一半的日期时,我通过它,再次运行它并且它也一样,我通常F5大约5次以确认它完成.虽然这在调试中很好,但我需要知道每次都能完美运行.

Sub Remove_Unecessary_Data_1()

Dim ALLCs As Worksheet
Dim DS As Worksheet
Dim finaldate As Date




Set DS = Sheets("Data Summary")
Set ALLCs = Sheets("Asset LLC (Input)")



    ALLCs.Select
        For y = 1 To 40
            If InStr(1, Cells(13, y), "Timestamp of Execution") Then
                finaldate = ALLCs.Cells(50, y)
            End If
        Next

    ALLCs.Select
        For u = 1 To 40
            If InStr(1, Cells(13, u), "Start Date") Then
                For p = 2 To 69584
                If Cells(p + 14, u) > finaldate Then
                Cells(p + 14, u).EntireRow.Delete …
Run Code Online (Sandbox Code Playgroud)

debugging excel vba date excel-vba

0
推荐指数
1
解决办法
63
查看次数

标签 统计

date ×2

excel ×2

excel-vba ×2

vba ×2

debugging ×1

time ×1