首页 > 解决方案 > 排序日期(欧洲格式)

问题描述

我不是VBA专家,我只是勉强。但我无法理解这一点。

我有一个项目清单,我想获得具有特殊条件的特殊项目的最新日期。我运行以下循环:

Sub
Dim Lastdate2 As String
For n = 3 To 10000
If Range("patient").Offset(n, 0) = "" Then Exit For
Lastdate1 = ""
Lastdate2 = ""
StartDate = ""
EndDate = ""
For i = 3 To 10000
        If Range("patient_suivi").Offset(i, 0) = "" Then Exit For
                If Range("patient_suivi").Offset(i, 0) = Range("patient").Offset(n, 0) Then
                    If InStr(Range("type_contact").Offset(i, 0), "Livraison") > 0 Then
                        If LCase(Range("livraison").Offset(i, 0)) = LCase(Range("nature_des_soins").Offset(n, 0)) Then
                            If Range("date_patient_suivi").Offset(i, 0).Value > Lastdate2 Then
                                Lastdate2 = Range("date_patient_suivi").Offset(i, 0).Value
                            Else
                            End If
                        Else
                        End If

                    Else
                    End If
                Else
                End If
        Next i
        
        If Lastdate2 = "" Then
        Else
            Range("derniere_livraison_patient").Offset(n, 0) = DateValue(Format(Lastdate2, "dd/mm/yyyy"))
        End If
        End If

        End Sub

我有正确数量的 If / Else / End if。这里有趣的是这个循环:

                        If Range("date_patient_suivi").Offset(i, 0).Value > Lastdate2 Then
                            Lastdate2 = Range("date_patient_suivi").Offset(i, 0).Value

例如,我应该得到的日期是 11/06/20 (dd/mm/yy)。- 1 月至 6 月(01/01 至 11/01、01/02 至 11/02...)每个月的 11 日之前都可以正常工作 - 然后从 7 月到 12 月的每个月的 10 日(01 /07 到 10/07、01/08 到 10/08...) - 与年份无关!!!就好像这一年不存在一样。其余的时间它都弄错了……我很困惑。

标签: excelvbasorting

解决方案


推荐阅读