ªð¦^¦Cªí ¤W¤@¥DÃD µo©«

½Ð°Ý¦p¦ó¦b¤@Äæ¼Æ¦r·í¤¤ ³Ì¤j­È ¦¸¤j­È ²Ä¤T¤j­È ³]¤£¦P©³¦â

½Ð°Ý¦p¦ó¦b¤@Äæ¼Æ¦r·í¤¤ ³Ì¤j­È ¦¸¤j­È ²Ä¤T¤j­È ³]¤£¦P©³¦â



½Ð°Ý¦p¦ó¦b¤@Äæ¼Æ¦r·í¤¤  ³Ì¤j­È ¦¸¤j­È ²Ä¤T¤j­È ³]¤£¦P©³¦â
³Ì¤j­È   ©³¦â ³]¬° ¬õ¦â
²Ä¤G¤j­È ©³¦â ³]¬° ²LÂÅ
²Ä¤T¤j­È ©³¦â ³]¬° ¶À¦â

·PÁ¤j®aªºÀ°¦£
ÁÂÁÂ
¾Ç²ß ¾Ç²ß ¤@ª½¾Ç²ß

¥»©«³Ì«á¥Ñ luhpro ©ó 2016-4-1 03:34 ½s¿è

¦^´_ 1# peter95
¥ý¿ï¨ú A1 ¨ì A30(½Ð¨Ì¹ê»Ú±¡­×§ï¥½¦C¦C¸¹) Àx¦s®æ, ¦A¨Ì©³¤U¹Ï¤ù¤º®e³]©w§Y¥i.

TOP

¦^´_ 2# luhpro

·PÁ¦^´_

½Ð°Ý ¦³¿ìªk¼g¦¨VBA¶Ü
ÁÙ¦³ §Ú°õ¦æ ¤£¥X¨Ó
½Ð¦bÀ°À°§Ú
·PÁÂ
¾Ç²ß ¾Ç²ß ¤@ª½¾Ç²ß

TOP

¦^´_ 3# peter95
VBA °Ñ¦Ò³o¸Ì    http://forum.twbts.com/thread-16926-1-1.html
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¥»©«³Ì«á¥Ñ Kubi ©ó 2016-4-10 21:11 ½s¿è

¥t¥~´£¨Ñ´XºØ¦â±m¼Ð¥Üªk°µ°Ñ¦Ò¡G

¤@¡B¥ý[µ¹­È](²£¥Í·s¼Ë¥»)¡A¥H¤è«K°µ´ú¸Õ
¤G¡B§Q¥Î[»²§UÄæ±Æ§Çªk]¨Ó¶ñ¦â
¤T¡B§Q¥Î[»²§UÄæ«D±Æ§Çªk]¨Ó¶ñ¦â
¥|¡B§Q¥Î[°}¦Cªk]¨Ó¶ñ¦â
¤­¡B[±Æ§Ç]¬O§@¬°¶ñ¦â«á¡A¤è«K¸ê®ÆÅçÃÒ¤§¥Î
¤»¡B¦p¥Î¦rÂIÀÉ(Dictionary)¨Ó¶ñ¦â¤]¥iºÉ¥\¡A½Ð¦Û¦æ¼¶¼g

©³¤U´N¦¡µ{¦¡½X©å§@¡G

Option Base 1

Sub µ¹­È()
    Randomize
    Cells.Interior.ColorIndex = xlNone
    Cells.ClearContents
    er = Int(Rnd * 100) + 10
    Application.ScreenUpdating = False
    For c = 1 To Int(Rnd * 10) + 2
        For r = 1 To er
            Cells(r, c).Value = Int(Rnd * 1000)
        Next r
    Next c
    Application.ScreenUpdating = True
End Sub

Sub »²§UÄæ±Æ§Çªk()
    ci = Array(3, 8, 6)
    er = [A1].CurrentRegion.Rows.Count
    ec = [A1].CurrentRegion.Columns.Count + 1
    Application.ScreenUpdating = False
    For i = 1 To er
        Cells(i, ec).Value = i
    Next i
    For c = 1 To ec - 1
        Range(Cells(1, c), Cells(er, ec)).Sort key1:=Cells(1, c), order1:=2
        x = -1
        n = -1
        For Each cell In Cells(1, c).Resize(er)
            If cell.Value <> n Then
                n = cell.Value
                x = x + 1
                If x = 3 Then Exit For
                cell.Interior.ColorIndex = ci(x + 1)
            Else
                cell.Interior.ColorIndex = ci(x + 1)
            End If
        Next cell
        Range(Cells(1, c), Cells(er, ec)).Sort key1:=Cells(1, ec), order1:=1
    Next c
    Columns(ec).ClearContents
    Application.ScreenUpdating = True
End Sub

Sub »²§UÄæ«D±Æ§Çªk()
    ci = Array(3, 8, 6)
    er = [A1].CurrentRegion.Rows.Count
    ec = [A1].CurrentRegion.Columns.Count
    Application.ScreenUpdating = False
    For c = 1 To ec
        Range(Cells(1, ec + 1), Cells(er, ec + 2)).ClearContents
        For r = 1 To er
            For i = 1 To 3
                If Cells(i, ec + 1).Value = "" Then
                    Cells(i, ec + 1).Value = Cells(r, c).Value
                    Cells(i, ec + 2).Value = Trim(r)
                    Exit For
                Else
                    If Cells(r, c).Value = Cells(i, ec + 1).Value Then
                        Cells(i, ec + 2).Value = Cells(i, ec + 2).Value & "," & Trim(r)
                        Exit For
                    Else
                        If Cells(r, c).Value > Cells(i, ec + 1).Value Then
                            Range(Cells(i, ec + 1), Cells(i, ec + 2)).Insert Shift:=xlDown
                            Cells(i, ec + 1).Value = Cells(r, c).Value
                            Cells(i, ec + 2).Value = Trim(r)
                            Exit For
                        End If
                    End If
                End If
            Next i
        Next r
        For i = 1 To 3
            n = Split(Cells(i, ec + 2).Value, ",")
            For j = 0 To UBound(n)
                Cells(n(j), c).Interior.ColorIndex = ci(i)
            Next j
        Next i
    Next c
    Range(Cells(1, ec + 1), Cells(er, ec + 2)).ClearContents
    Application.ScreenUpdating = True
End Sub

Sub °}¦Cªk()
    Dim arr
    Dim brr()
    ci = Array(3, 8, 6)
    arr = [A1].CurrentRegion
    ec = UBound(arr, 2)
    er = UBound(arr)
    For c = 1 To ec
        ReDim brr(3, 2)
        For r = 1 To er
            n = arr(r, c)
            For i = 1 To 3
                If n = brr(i, 1) Then
                    brr(i, 2) = brr(i, 2) & "," & r
                    Exit For
                End If
                If brr(i, 1) = "" Then
                    brr(i, 1) = n
                    brr(i, 2) = r
                    Exit For
                Else
                    If n > brr(i, 1) Then
                        For j = 3 To i + 1 Step -1
                            brr(j, 1) = brr(j - 1, 1)
                            brr(j, 2) = brr(j - 1, 2)
                        Next j
                        brr(i, 1) = n
                        brr(i, 2) = r
                        Exit For
                    End If
                End If
            Next i
        Next r
        For i = 1 To 3
            x = Split(brr(i, 2), ",")
            For j = 0 To UBound(x)
                Cells(x(j), c).Interior.ColorIndex = ci(i)
            Next j
        Next i
    Next c
End Sub

Sub ±Æ§Ç()
    ec = [A1].End(2).Column
    er = [A65536].End(3).Row
    Application.ScreenUpdating = False
    For c = 1 To ec
        Range(Cells(1, c), Cells(er, c)).Sort key1:=Cells(1, c), order1:=2
    Next c
    Application.ScreenUpdating = True
End Sub
[b]Kubi[/b]

TOP

«e¤T¤j³£¤£¥u¤@­Ó¡A¦p¦ó³B²z¡H
¢°¢¯¢¯
¢¸¢¸
¢°¢¯¢¯
¢¸¢¸
¢¸¢¸
¢·¢´
¢¶¢¯
¢¶¢µ

TOP

½Ð°Ý
³o­Ó¥Î¨ç¼Æ¸òVBA¼g¡A¨âªÌªº®t²§©Ê¦b¨º¸Ì??
¨º¤@ºØ¹ï¸ê·½­t¾á·|¤ñ¸û¤j¤@ÂI??

TOP

¥»©«³Ì«á¥Ñ peter95 ©ó 2016-4-12 01:53 ½s¿è

¦^´_ 5# Kubi

·PÁ¤j¤j  ¼ö½ÐÀ°¦£
¤p§Ì°õ¦æ®É µo²{ª¬ªp


»²§UÄæ«D±Æ§Çªk
¶À¦â¦a¤èÅã¥Ü¿ù»~ µM«á·í±¼


½Ð¤j¤j ¦AÀ°§Ú¬Ý¬Ý
ªþ¤W¤p§Ì ­n¿z¿ïªºÀÉ®×
Book1.rar (6.09 KB)
¦A¦¸·PÁ ¦U¦ì ¤j¤jªºÀ°¦£
ÁÂÁÂ
¾Ç²ß ¾Ç²ß ¤@ª½¾Ç²ß

TOP

¦^´_ 8# peter95
¤W¶ÇÀÉ®× xlsx ¬OµL¥¨¶°¨S¦³µ{¦¡½X,»Ý¤W¶Ç°ÆÀɦWxlsm¦³¥¨¶°µ{¦¡½X.
  1. Option Explicit
  2. Option Base 0
  3. Sub Ex_()
  4.     'Option Base ³¯­z¦¡ ¦b¼Ò²Õ¼h¦¸¤¤¥Î¨Ó«Å§i°}¦C¯Á¤Þªº¹w³]¤U­­¡C
  5.     'Option Base {0 | 1}
  6.     '°}¦C¤¸¯À¤U­­­È,¹w³]¬° Option Base 0
  7.     ' ¹w³]­È  For I = 0 To 2  '¤~¥¿½T
  8.     '¦³ Option Base  1   For I = 1 To 3 '¬O¥¿½T
  9.     '¤£ºÞ¦³µL  Option Base
  10.     '«OÀI§@ªk  For I = LBound(ci) To UBound(ci)
  11.    ' Dim ci(5 To 7), i As Integer
  12.    ' ci(5) = 3
  13.    ' ci(6) = 8
  14.    ' ci(7) = 6
  15.     Dim ci(), i As Integer
  16.     ci = Array(3, 8, 6)
  17.    
  18.     MsgBox " ci ¤U­­­È " & LBound(ci) & " ci ¤W­­­È " & UBound(ci)
  19.     For i = LBound(ci) To UBound(ci)
  20.         MsgBox ci(i)
  21.     Next
  22. End Sub
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¥ý¸Õ[®æ¦¡¤Æ±ø¥ó]¡G
http://www.funp.net/116242

¦pªG«e¤T¤j¤£¥u¤@­Ó¡A¦p¦ó¼Ð¦â¡H

TOP

        ÀR«ä¦Û¦b : ºw¤ô¦¨ªe¡C²É¦Ì¦¨ÅÚ¡A¤Å»´¤vÆF¡A¤Å¥Hµ½¤p¦Ó¤£¬°¡C
ªð¦^¦Cªí ¤W¤@¥DÃD