以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  求助 代码优化  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=99295)

--  作者:jackyfashion
--  发布时间:2017/4/16 21:57:00
--  求助 代码优化
您好!老师:
请您帮我优化一下下面的代码:
   If e.sender.Checked = False Then
       Return
   Else
       Dim a = t.Current
       Dim ny1 = a("nydc1")
       Dim ny2 = a("nydc2")
       Dim ny3 = a("nydc3")
       Dim ny4 = a("nydc4")
       Dim ny5 = a("nydc5")
       Dim ny6 = a("nydc6")
       Dim ny7 = a("nydc7")
       Dim ny8 = a("nydc8")
       Dim ny9 = a("nydc9")
       Dim ny10 = a("nydc10")
       Dim ny11 = a("nydc11")
       Dim ny12 = a("nydc12")
       Dim ny13 = a("nydc13")
       Dim ny14 = a("nydc14")
       Dim ny15 = a("nydc15")
       Dim ny16 = a("nydc16")
       Dim ny17 = a("nydc17")
       Dim ny18 = a("nydc18")
       With Tables("qrymyf.qraaan.ddwxnyfgge")
           .Cols("nydc21").Caption = "洗水前_" & ny1
           .Cols("nydc22").Caption = "洗水前_" & ny2
           .Cols("nydc23").Caption = "洗水前_" & ny3
           .Cols("nydc24").Caption = "洗水前_" & ny4
           .Cols("nydc25").Caption = "洗水前_" & ny5
           .Cols("nydc26").Caption = "洗水前_" & ny6
           .Cols("nydc27").Caption = "洗水前_" & ny7
           .Cols("nydc28").Caption = "洗水前_" & ny8
           .Cols("nydc29").Caption = "洗水前_" & ny9
           .Cols("nydc30").Caption = "洗水前_" & ny10
           .Cols("nydc31").Caption = "洗水前_" & ny11
           .Cols("nydc32").Caption = "洗水前_" & ny12
           .Cols("nydc33").Caption = "洗水前_" & ny13
           .Cols("nydc34").Caption = "洗水前_" & ny14
          .Cols("nydc35").Caption = "洗水前_" & ny15
           .Cols("nydc36").Caption = "洗水前_" & ny16
           .Cols("nydc37").Caption = "洗水前_" & ny17
           .Cols("nydc38").Caption = "洗水前_" & ny18
           .BuildHeader()
       End With
       With Tables("qrymyf.qraaan.ddwxnyfgge")
           If a.Isnull("nydc1") = True Then
               .Cols("nydc21").Visible = False
           Else
               .Cols("nydc1").Visible = True
                .Cols("nydc21").Visible = True
            End If
            If a.Isnull("nydc2") = True Then
                .Cols("nydc22").Visible = False
            Else
                .Cols("nydc2").Visible = True
                .Cols("nydc22").Visible = True
            End If
            If a.Isnull("nydc3") = True Then
                .Cols("nydc23").Visible = False
            Else
                .Cols("nydc3").Visible = True
                .Cols("nydc23").Visible = True
            End If
            If a.Isnull("nydc4") = True Then
                .Cols("nydc24").Visible = False
            Else
                .Cols("nydc4").Visible = True
                .Cols("nydc24").Visible = True
            End If
            If a.Isnull("nydc5") = True Then
                .Cols("nydc25").Visible = False
            Else
                .Cols("nydc5").Visible = True
                .Cols("nydc25").Visible = True
            End If
            If a.Isnull("nydc6") = True Then
                .Cols("nydc26").Visible = False
            Else
                .Cols("nydc6").Visible = True
                .Cols("nydc26").Visible = True
            End If
            If a.Isnull("nydc7") = True Then
                .Cols("nydc27").Visible = False
            Else
                .Cols("nydc7").Visible = True
                .Cols("nydc27").Visible = True
            End If
            If a.Isnull("nydc8") = True Then
                .Cols("nydc28").Visible = False
            Else
                .Cols("nydc8").Visible = True
                .Cols("nydc28").Visible = True
            End If
            If a.Isnull("nydc9") = True Then
                .Cols("nydc29").Visible = False
            Else
                .Cols("nydc9").Visible = True
                .Cols("nydc29").Visible = True
            End If
            If a.Isnull("nydc10") = True Then
                .Cols("nydc30").Visible = False
            Else
                .Cols("nydc10").Visible = True
                .Cols("nydc30").Visible = True
            End If
            If a.Isnull("nydc11") = True Then
                .Cols("nydc31").Visible = False
            Else
                .Cols("nydc11").Visible = True
                .Cols("nydc31").Visible = True
            End If
            If a.Isnull("nydc12") = True Then
                .Cols("nydc32").Visible = False
            Else
                .Cols("nydc12").Visible = True
                .Cols("nydc32").Visible = True
            End If

            If a.Isnull("nydc13") = True Then
                .Cols("nydc33").Visible = False
            Else
                .Cols("nydc13").Visible = True
                .Cols("nydc33").Visible = True
            End If
            If a.Isnull("nydc14") = True Then
                .Cols("nydc34").Visible = False
            Else
                .Cols("nydc14").Visible = True
                .Cols("nydc34").Visible = True
            End If
            If a.Isnull("nydc15") = True Then
                .Cols("nydc35").Visible = False
            Else
                .Cols("nydc15").Visible = True
                .Cols("nydc35").Visible = True
            End If
            If a.Isnull("nydc16") = True Then
                .Cols("nydc36").Visible = False
            Else
                .Cols("nydc16").Visible = True
                .Cols("nydc36").Visible = True
            End If
            If a.Isnull("nydc17") = True Then
               .Cols("nydc37").Visible = False
           Else
               .Cols("nydc17").Visible = True
               .Cols("nydc37").Visible = True
           End If
            If a.Isnull("nydc18") = True Then
                .Cols("nydc38").Visible = False
            Else
                .Cols("nydc18").Visible = True
                .Cols("nydc38").Visible = True
            End If
        End With
        t.ResumeRedraw
    End If

谢谢老师!!!

--  作者:有点蓝
--  发布时间:2017/4/16 23:17:00
--  
同样的问题你已经问过,用法完全一样


--  作者:jackyfashion
--  发布时间:2017/4/17 22:25:00
--  
您好!老师:
不同的是原来是nydc1对的是nydc1
现在是nydc1对nydc21写了几次都无法实现,

Dim t As Table = Tables("susrnydcge")

If t.Rows.Count = 0 Then

    Return

Else

    Dim a = t.Current

    Dim c As String = "nydc"

    With Tables("nyfgge")

        For i As Integer = 1 To 18

For j As Integer = 21 To 38

            .Cols(c & j).Caption = a(c & i)

.BuildHeader()

            .Cols(c & j).Visible = (a.Isnull(c & i) = False)

        Next

Next

    End With

请指教!!!谢谢!


--  作者:jspta
--  发布时间:2017/4/18 9:04:00
--  

For j As Integer = 21 To 38

            .Cols(c & j).Caption = a(c & j-20)


            .Cols(c & j).Visible = (a.Isnull(c & j-20) = False)

        Next

.BuildHeader()

[此贴子已经被作者于2017/4/18 9:05:06编辑过]

--  作者:yupeng
--  发布时间:2017/4/18 10:21:00
--  
兄弟  你这个是服装管理的吗  我也是弄服装的  有空可以交流下  Q415946293
--  作者:jackyfashion
--  发布时间:2017/4/18 22:32:00
--  
谢谢老师!!!