Excel VBA 處理單價的一些代碼

以下代碼們都是有業務邏輯的,展示在這裏,只是想讓自己別忘了一些寫法,至於業務邏輯,
各位想必沒有興趣,有興趣的可以學習

Sub «ö2_Click()
m = 5
For i = 3 To 10000 '±q²Ä3¦æ¶}©l¡A®Á¦æ³B²z
    If Len(Sheet2.Cells(i, 2).Value) < 2 Then
       Exit For
    End If
    n = 0
    For j = 3 To 10000 '´M§ä¬O§_¦³¬Û¦Pòò»ù³æ¸¹+¶µ¦¸
       If Len(Sheet2.Cells(j, 2).Value) < 2 Then
          Exit For
       End If
       If Sheet2.Cells(i, 2).Value = Sheet2.Cells(j, 2).Value And _
          Sheet2.Cells(i, 3).Value = Sheet2.Cells(j, 3).Value Then
          n = n + 1
       End If
    Next j
    If n = 1 And Sheet2.Cells(i, 13).Value <> "" Then '¦¹³B­n¯d·N¡A¦pªG¤À¶q­p»ùªº¤W­­¤£?ªÅªº®É­Ô¡A´Ncopy¹L¨Ó
       Sheet1.Cells(m, 1).Value = Sheet2.Cells(i, 1).Value
       Sheet1.Cells(m, 2).Value = Sheet2.Cells(i, 2).Value
       Sheet1.Cells(m, 3).Value = Sheet2.Cells(i, 3).Value
       Sheet1.Cells(m, 4).Value = Sheet2.Cells(i, 4).Value
       Sheet1.Cells(m, 5).Value = Sheet2.Cells(i, 5).Value
       Sheet1.Cells(m, 6).Value = Sheet2.Cells(i, 6).Value
       Sheet1.Cells(m, 7).Value = Sheet2.Cells(i, 7).Value
       Sheet1.Cells(m, 8).Value = Sheet2.Cells(i, 8).Value
       Sheet1.Cells(m, 9).Value = Sheet2.Cells(i, 14).Value
       'Sheet1.Cells(m, 10).Value = Sheet2.Cells(i, 15).Value
       Sheet1.Cells(m, 10).Value = Sheet2.Cells(i, 14).Value * 1.16
       Sheet1.Cells(m, 11).Value = Sheet2.Cells(i, 11).Value
       'Sheet1.Cells(m, 12).Value = Sheet2.Cells(i, 12).Value
       'Sheet1.Cells(m, 13).Value = Sheet2.Cells(i, 13).Value
       'Sheet1.Cells(m, 14).Value = Sheet2.Cells(i, 14).Value
       'Sheet1.Cells(m, 15).Value = Sheet2.Cells(i, 15).Value
       m = m + 1
    End If
    If n = 1 And Sheet2.Cells(i, 13).Value = "" Then '¤£¬O¤À¶q­p»ù
       Sheet1.Cells(m, 1).Value = Sheet2.Cells(i, 1).Value
       Sheet1.Cells(m, 2).Value = Sheet2.Cells(i, 2).Value
       Sheet1.Cells(m, 3).Value = Sheet2.Cells(i, 3).Value
       Sheet1.Cells(m, 4).Value = Sheet2.Cells(i, 4).Value
       Sheet1.Cells(m, 5).Value = Sheet2.Cells(i, 5).Value
       Sheet1.Cells(m, 6).Value = Sheet2.Cells(i, 6).Value
       Sheet1.Cells(m, 7).Value = Sheet2.Cells(i, 7).Value
       Sheet1.Cells(m, 8).Value = Sheet2.Cells(i, 8).Value
       Sheet1.Cells(m, 9).Value = Sheet2.Cells(i, 9).Value
       'Sheet1.Cells(m, 10).Value = Sheet2.Cells(i, 10).Value
       Sheet1.Cells(m, 10).Value = Sheet2.Cells(i, 9).Value * 1.16
       Sheet1.Cells(m, 11).Value = Sheet2.Cells(i, 11).Value
       'Sheet1.Cells(m, 12).Value = Sheet2.Cells(i, 12).Value
       'Sheet1.Cells(m, 13).Value = Sheet2.Cells(i, 13).Value
       'Sheet1.Cells(m, 14).Value = Sheet2.Cells(i, 14).Value
       'Sheet1.Cells(m, 15).Value = Sheet2.Cells(i, 15).Value
       m = m + 1
    End If
Next i
End Sub
Sub «ö3_Click()
For i = 5 To 100000
    If Len(Sheet1.Cells(i, 2).Value) < 2 Then
       Exit For
    End If
    For j = 1 To 15
       Sheet1.Cells(i, j).Value = ""
    Next j
Next i
End Sub
Sub «ö1_Click()
m = 5
For i = 3 To 10000 '±q²Ä3¦æ¶}©l¡A®Á¦æ³B²z
    If Len(Sheet2.Cells(i, 2).Value) < 2 Then
       Exit For
    End If
    n = 0
    For j = 3 To 10000 '´M§ä¬O§_¦³¬Û¦Pòò»ù³æ¸¹+¶µ¦¸
       If Len(Sheet2.Cells(j, 2).Value) < 2 Then
          Exit For
       End If
       If Sheet2.Cells(i, 2).Value = Sheet2.Cells(j, 2).Value And _
          Sheet2.Cells(i, 3).Value = Sheet2.Cells(j, 3).Value Then
          n = n + 1
       End If
    Next j
    '¥[­Ó§PÂ_¡A¦pªG¤w¸g¦s¦b¡A´N¤£¼g¤J
    
    
    
    If n > 1 And Sheet2.Cells(i, 13).Value <> "" Then '¦¹³B­n¯d·N¡A¦pªG¤À¶q­p»ùªº¤W­­¤£?ªÅªº®É­Ô¡A´Ncopy¹L¨Ó
       n_2 = 0
       For j = 3 To 10000 '´M§ä¬O§_¦³¬Û¦Pòò»ù³æ¸¹+¶µ¦¸
         If Len(Sheet3.Cells(j, 2).Value) < 2 Then
            Exit For
         End If
         If Sheet3.Cells(j, 2).Value = Sheet2.Cells(i, 2).Value And _
            Sheet3.Cells(j, 3).Value = Sheet2.Cells(i, 3).Value Then
            n_2 = n_2 + 1
         End If
       Next j
       
       If n_2 = 0 Then
          Sheet3.Cells(m, 1).Value = Sheet2.Cells(i, 1).Value
          Sheet3.Cells(m, 2).Value = Sheet2.Cells(i, 2).Value
          Sheet3.Cells(m, 3).Value = Sheet2.Cells(i, 3).Value
          Sheet3.Cells(m, 4).Value = Sheet2.Cells(i, 4).Value
          Sheet3.Cells(m, 5).Value = Sheet2.Cells(i, 5).Value
          Sheet3.Cells(m, 6).Value = Sheet2.Cells(i, 6).Value
          Sheet3.Cells(m, 7).Value = Sheet2.Cells(i, 7).Value
          Sheet3.Cells(m, 8).Value = Sheet2.Cells(i, 8).Value
          Sheet3.Cells(m, 9).Value = Sheet2.Cells(i, 9).Value
          Sheet3.Cells(m, 10).Value = Sheet2.Cells(i, 10).Value
          Sheet3.Cells(m, 11).Value = Sheet2.Cells(i, 11).Value
          'Sheet3.Cells(m, 12).Value = Sheet2.Cells(i, 12).Value
          'Sheet3.Cells(m, 13).Value = Sheet2.Cells(i, 13).Value
          'Sheet3.Cells(m, 14).Value = Sheet2.Cells(i, 14).Value
          'Sheet3.Cells(m, 15).Value = Sheet2.Cells(i, 14).Value * 1.16
          m = m + 1
       End If
    End If
Next i
End Sub
Sub «ö6_Click()
For i = 5 To 100000
    If Len(Sheet3.Cells(i, 2).Value) < 2 Then
       Exit For
    End If
    For j = 1 To 15
       Sheet3.Cells(i, j).Value = ""
    Next j
Next i
End Sub
Sub «ö13_Click()
For i = 5 To 10000 '±q²Ä3¦æ¶}©l¡A®Á¦æ³B²z
    If Len(Sheet1.Cells(i, 2).Value) < 2 Then
       Exit For
    End If
    If i = 5 Then
       Sheet1.Cells(i, 3).Value = 1
    End If
    If i > 5 Then
       Sheet1.Cells(i, 3).Value = Sheet1.Cells(i - 1, 3).Value + 1
    End If
Next i
End Sub
Sub «ö14_Click()

End Sub
Sub Sheet3_«ö1_Click()
m = 5
For i = 5 To 10000 '±q²Ä3¦æ¶}©l¡A®Á¦æ³B²z
    If Len(Sheet1.Cells(i, 2).Value) < 2 Then
       Exit For
    End If
    Sheet4.Cells(m, 2).Value = Sheet4.Cells(1, 4).Value
    Sheet4.Cells(m, 3).Value = Sheet1.Cells(i, 3).Value
    Sheet4.Cells(m, 4).Value = Sheet1.Cells(i, 4).Value
    Sheet4.Cells(m, 5).Value = Sheet1.Cells(i, 6).Value
    Sheet4.Cells(m, 6).Value = Sheet1.Cells(i, 9).Value
    Sheet4.Cells(m, 7).Value = Sheet1.Cells(i, 9).Value
    Sheet4.Cells(m, 8).Value = Sheet1.Cells(i, 11).Value
    Sheet4.Cells(m, 9).Value = Date
    Sheet4.Cells(m, 10).Value = " "
    Sheet4.Cells(m, 11).Value = Sheet1.Cells(i, 8).Value
    Sheet4.Cells(m, 12).Value = Sheet1.Cells(i, 10).Value
    Sheet4.Cells(m, 13).Value = "1"
    Sheet4.Cells(m, 14).Value = " "
    Sheet4.Cells(m, 15).Value = "CKW"
    Sheet4.Cells(m, 16).Value = "CKW"
    m = m + 1
Next i
End Sub
Sub «ö7_Click()
For i = 5 To 10000
    If Len(Sheet4.Cells(i, 4).Value) < 2 Then
       Exit For
    End If
    For j = 1 To 16
       Sheet4.Cells(i, j).Value = ""
    Next j
Next i
End Sub
Sub ¨ú¥X¯u¥¿¤À¶q­p»ù_«ö7_Click()
For i = 5 To 10000
    If Len(Sheet3.Cells(i, 1).Value) < 2 Then
       Exit For
    End If
    'Sheet3.Cells(i, 2).Value = Sheet3.Cells(1, 2).Value
    If i = 5 Then
       Sheet3.Cells(i, 13).Value = 1
    End If
    If i > 5 Then
       Sheet3.Cells(i, 13).Value = Sheet3.Cells(i - 1, 13).Value + 1
    End If
Next i
End Sub

Sub ¨ú¥X¯u¥¿¤À¶q­p»ùPMR_«ö2_Click()
m = 5
For i = 3 To 10000 '±q²Ä3¦æ¶}©l¡A®Á¦æ³B²z
    If Len(Sheet2.Cells(i, 2).Value) < 2 Then
       Exit For
    End If
    n = 0
    For j = 3 To 10000 '´M§ä¬O§_¦³¬Û¦Pòò»ù³æ¸¹+¶µ¦¸
       If Len(Sheet2.Cells(j, 2).Value) < 2 Then
          Exit For
       End If
       If Sheet2.Cells(i, 2).Value = Sheet2.Cells(j, 2).Value And _
          Sheet2.Cells(i, 3).Value = Sheet2.Cells(j, 3).Value Then
          n = n + 1
       End If
    Next j
    If n > 1 And Sheet2.Cells(i, 13).Value <> "" Then '¦¹³B­n¯d·N¡A¦pªG¤À¶q­p»ùªº¤W­­¤£?ªÅªº®É­Ô¡A´Ncopy¹L¨Ó
       If n_2 = 0 Then
          Sheet5.Cells(m, 1).Value = Sheet2.Cells(i, 1).Value
          Sheet5.Cells(m, 2).Value = Sheet2.Cells(i, 2).Value
          Sheet5.Cells(m, 3).Value = Sheet2.Cells(i, 3).Value
          Sheet5.Cells(m, 4).Value = Sheet2.Cells(i, 12).Value
          Sheet5.Cells(m, 5).Value = Sheet2.Cells(i, 13).Value
          Sheet5.Cells(m, 6).Value = Sheet2.Cells(i, 14).Value
          Sheet5.Cells(m, 7).Value = Sheet2.Cells(i, 15).Value
          'Sheet5.Cells(m, 8).Value = Sheet2.Cells(i, 8).Value
          'Sheet5.Cells(m, 9).Value = Sheet2.Cells(i, 9).Value
          'Sheet5.Cells(m, 10).Value = Sheet2.Cells(i, 10).Value
          'Sheet5.Cells(m, 11).Value = Sheet2.Cells(i, 11).Value
          'Sheet5.Cells(m, 12).Value = Sheet2.Cells(i, 12).Value
          'Sheet5.Cells(m, 13).Value = Sheet2.Cells(i, 13).Value
          'Sheet5.Cells(m, 14).Value = Sheet2.Cells(i, 14).Value
          'Sheet5.Cells(m, 15).Value = Sheet2.Cells(i, 14).Value * 1.16
          m = m + 1
       End If
    End If
Next i
End Sub
Sub ¨ú¥X¯u¥¿¤À¶q­p»ùPMR_«ö7_Click()
For i = 5 To 10000
    If Len(Sheet5.Cells(i, 2).Value) < 2 Then
       Exit For
    End If
    For j = 5 To 10000
        If Len(Sheet3.Cells(j, 2).Value) < 2 Then
           Exit For
        End If
        If Sheet5.Cells(i, 2).Value = Sheet3.Cells(j, 2).Value _
        And Sheet5.Cells(i, 3).Value = Sheet3.Cells(j, 3).Value Then
           Sheet5.Cells(i, 9).Value = Sheet3.Cells(j, 13).Value
        End If
    Next j
Next i
End Sub
Sub «ö8_Click()
For i = 5 To 10000
    If Len(Sheet3.Cells(i, 2).Value) < 2 Then
       Exit For
    End If
    Sheet3.Cells(i, 2).Value = Sheet5.Cells(1, 2).Value
    Sheet3.Cells(i, 3).Value = Sheet3.Cells(i, 13).Value
Next i
For i = 5 To 10000
    If Len(Sheet5.Cells(i, 2).Value) < 2 Then
       Exit For
    End If
    Sheet5.Cells(i, 2).Value = Sheet5.Cells(1, 2).Value
    Sheet5.Cells(i, 3).Value = Sheet5.Cells(i, 9).Value
Next i
End Sub

Sub «ö9_Click()
For i = 5 To 100000
    If Len(Sheet5.Cells(i, 2).Value) < 2 Then
       Exit For
    End If
    For j = 1 To 15
       Sheet5.Cells(i, j).Value = ""
    Next j
Next i
End Sub












發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章