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

[µo°Ý] ¿é¤J¸ê®Æ¤ñ¹ï¸ê®Æªí Âà´«¨ì§Oªº¸ê®Æªí

¥»©«³Ì«á¥Ñ GBKEE ©ó 2016-10-10 10:50 ½s¿è

¦^´_ 2# v03586
½Ð°Ý ´á®ð¥²¥ý¤J´á®ðÂd, ¨ä¥¦ª«¥ó¥²¥ý¤J¦B½c. ¨ú¥X(´á®ð,¦B½cª«¥ó),¬O§_³£¥²¥ý¤J¤J¦^·Å°Ï

§A©Ò»Ýªºµ{¦¡¬° 1:¦B½c                A:¦sª«¥ó(·s¼W¸ê®Æ)                B:¨úª«¥ó¤J¦^·Å°Ï(¸ê®ÆÂಾ¨ì¦^·Å°Ï)
                    2:´á®ðÂd              A:¦s´á®ð(·s¼W¸ê®Æ)                B:¨ú´á®ð,¤J¦^·Å°Ï(¸ê®ÆÂಾ¨ì¦^·Å°Ï)
                    3: ¥X¦^·Å°Ï(§R°£¸ê®Æ)
¥H¤Wµ{§Ç¥i§_¦³¤@ [¤u¸¹],[¼h¬[½s¸¹],[Film P/N],[Lot],[¦^·Å«á¨Ï¥Î´Á­­],[½¦¯È»s³y¤é],[½¦¯È¨ì´Á¤é]ªº¸ê®Æªí,
°µ¬°³o¨Çµ{¦¡ªº¿ï¶µ¾ã¦X,¥Îªí³æ(UserForm)¨Ó°õ¦æ


½¦¯È»s³y¤é,½¦¯È¨ì´Á¤é ªº¸ê®Æ®æ¦¡¬°¦ó¥Î¤å¦r¦Ó¤£¥Î¤é´Á®æ¦¡.
¶ZÂ÷¹L´Á¤Ñ¼Æ: DATE-½¦¯È¨ì´Á¤é ,±Æ§Ç¥i¥Î [½¦¯È¨ì´Á¤é]Äæ »¼¼W
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¥»©«³Ì«á¥Ñ GBKEE ©ó 2016-10-16 13:57 ½s¿è

¦^´_ 4# v03586
' Q4.¬d¸ß¥ý¶i¥ý¥X¥\¯à '¨Ï¥ÎªÌ¿ï¾Ü­n¬d¸ßªº¸ê®Æªí¡¨¤U©Ô¦¡¿ï³æ¡¨, ¿é¤J®Æ¸¹«á,«ö¤U¡£¬d¸ß¡¤«ö¶s,
       'Listbox Åã¥Ü¸Ó®Æ¸¹ªº¡y«e¤Tµ§¶¶§Ç¡z¡yLOT¡z¡y¼h¬[¦ì¸m¡z
ªþÀɪº¬d¸ßªí³æ¼Ò²Õªºµ{¦¡
  1. Dim Sh As Worksheet
  2. Private Sub UserForm_Initialize()
  3.     ComboBox1.AddItem "¦B½c"
  4.     ComboBox1.AddItem "¦^·Å°Ï"
  5.     ComboBox1.AddItem "´á®ðÂd"
  6. End Sub
  7. Private Sub CommandButton1_Click()
  8.     Unload Me
  9. End Sub
  10. Private Sub ComboBox1_Change()
  11.     Dim E As Worksheet
  12.     If ComboBox1.ListIndex > -1 Then
  13.         Set Sh = Sheets("Database-" & ComboBox1)
  14.          '**¦p¦³¿ù»~§ï¥Î¤U¦Cµ{¦¡½X : ¤u§@ªí¦WºÙªº®t²§
  15.         'For Each E In Sheets
  16.         '    If InStr(E.Name, ComboBox1) Then
  17.         '        Set Sh = E
  18.         '        Exit For
  19.         '    End If
  20.         'Next
  21.         Ex_Ans Sh    '©I¥sµ{§Ç ¶Ç»¼°Ñ¼Æ
  22.         If Trim(TextBox2) <> "" Then TextBox2_Change
  23.     End If
  24. End Sub
  25. Private Sub TextBox2_Change()
  26.     Dim i As Integer, D As Object, Ar
  27.     Set D = CreateObject("SCRIPTING.DICTIONARY")
  28.     If Trim(TextBox2) <> "" And ComboBox1.ListIndex > -1 Then
  29.         i = 2
  30.         '®Æ¸¹¬O Film P/NF ? ->Sh.Cells(i, "C")
  31.         Do While Sh.Cells(i, "a") <> ""
  32.             If Len(Sh.Cells(i, "a")) > 1 And UCase(Sh.Cells(i, "C")) = UCase(Trim(TextBox2)) Then
  33.                 '**Len(Sh.Cells(i, "a")) > 1  ¦]¦U¤u§@ªí «e49µ§¸ê®Æ "-" ¬°¦ó??
  34.                 If Not D.exists(Trim(TextBox2)) Then
  35.                     D(Trim(TextBox2)) = Array(Array(Sh.Cells(i, "B").Text, Sh.Cells(i, "C").Text, Sh.Cells(i, "D").Text))
  36.                 Else
  37.                     Ar = D(Trim(TextBox2))
  38.                     ReDim Preserve Ar(0 To UBound(Ar) + 1)
  39.                     Ar(UBound(Ar)) = Array(Sh.Cells(i, "B").Text, Sh.Cells(i, "C").Text, Sh.Cells(i, "D").Text)
  40.                      D(Trim(TextBox2)) = Ar
  41.                 End If
  42.             End If
  43.             i = i + 1
  44.         Loop
  45.         With TextBox1  'ªþÀɪº¬d¸ßªí³æ¬O TextBox ±±¨î¶µ
  46.             .Text = ""
  47.            .Multi= True
  48.             .MultiÄÝ©Ê «ü©w±±¨î¶µ¬O§_±µ¨ü¨ÃÅã¥Ü¦h¦æ¤å¦r¡C
  49.         End With
  50.           '*********'ªþÀɦp¦³¬O ListBox1 ±±¨î¶µ
  51.         'With ListBox1
  52.         '    .ColumnCount = 3
  53.         '    .ColumnWidths = "30,50,50"
  54.         '    .Clear
  55.         'End With
  56.         '*********************************
  57.         If D.Count > 0 And D.exists(Trim(TextBox2)) Then
  58.             'ReDim Ar(0)                               '**ªþÀɦp¦³¬O ListBox1 ±±¨î¶µ
  59.             For i = 0 To UBound(D(Trim(TextBox2)))
  60.             '    ReDim Preserve Ar(0 To i)      '**'ªþÀɦp¦³¬O ListBox1 ±±¨î¶µ
  61.                 TextBox1 = TextBox1 & IIf(TextBox1 <> "", vbCrLf, "") & Join(D(Trim(TextBox2))(i), ",")
  62.             '    Ar(i) = D(Trim(TextBox2))(i)  '''ªþÀɦp¦³¬O ListBox1 ±±¨î¶µ
  63.                 If i = 2 Then Exit For  'Åã¥Ü¤Tµ§
  64.             Next
  65.             '********'''ªþÀɦp¦³¬O ListBox1 ±±¨î¶µ
  66.             'If UBound(Ar) > 0 Then
  67.             '    ListBox1.List = Application.Transpose(Application.Transpose(Ar)) ''ªþÀɦp¦³¬O ListBox1 ±±¨î¶µ
  68.             'Else
  69.             '    Ar = Ar(0)
  70.             '    With ListBox1
  71.             '        .AddItem
  72.             '        For i = 0 To UBound(Ar)
  73.             '            .List(.ListCount - 1, i) = Ar(i)
  74.             '        Next
  75.             '    End With
  76.             'End If
  77.         End If
  78.     End If
  79. End Sub
½Æ»s¥N½X
Q2-3. ¥t¥~¡uF¡vÄæ¦ì¬O§_¯à¤º«Ø®æ¦¡YYYY/MM/DD HH:MM ??
  ¦b¤u§@¤W¼g¤W Now ·|¦Û°Ê¥Í¦¨YYYY/MM/DD HH:MM ªº®æ¦¡

³oµ{¦¡½X½Ð¦Ü©ó¤@¯ë¼Ò²Õ,¥i¨Ñ¨ä¥¦µ{¦¡¨Ï¥Î
  1. Option Explicit
  2. Sub Ex_Ans(Sh As Worksheet)
  3.     Dim St As String, i(1 To 3) As Integer, D As Object, e As Variant, Rng As Range
  4.     'Set Sh = ¬d¸ß.Sh
  5.     With Sh
  6.     'With ActiveSheet   ' ¥i«ü©w¬°¡yDatabase-¦B½c¡z©Î¡yDatabase-¦^·Å°Ï¡z©Î¡yDatabase-¤J´á®ðÂd¡z
  7.     '.Activate
  8.         St = "½¦¯È¨ì´Á¤é"
  9.         i(1) = Application.WorksheetFunction.Match(St, Rows(1), 0) '**¶Ç¦^½¦¯È¨ì´Á¤éªºÄæ¦ì
  10.         
  11.         
  12.                 .Columns(i(1)).TextToColumns Destination:=.Cells(1, i(1)), DataType:=xlDelimited, _
  13.         FieldInfo:=Array(1, 5), TrailingMinusNumbers:=True  '***(¤å¦r®æ¦¡, Âà´«¬°¤é´Á)
  14.         
  15.         '   Q1. ©ñ¤J¦B½c«á¸ê®Æ·|¦s¦b¡yDatabase-¦B½c¡z¸ê®Æªí
  16.         '       ¥i§_À°³Â¥[¤J­pºâ¡uI¡vÄæ¦ìªº¶ZÂ÷¹L´Á¤Ñ¼Æ, ¨Ì·Ó¡uG¡vÄæ¦ì¨ì´Á¤é­pºâ
  17.         '        ¦A¥Ñ¡§§Ö¹L´Áªº¡¨¦b¡uJ¡vÄæ¦ì, Åã¥ÜÀu¥ý®³¨úªº¶¶§Ç
  18.   
  19.         ' Q2. ©ñ¤J¦^·Å°Ï«á¸ê®Æ·|¦s¦b¡yDatabase-¦^·Å°Ï¡z¸ê®Æªí
  20.         '  ¥i§_À°³Â¥[¤J­pºâ¡uJ¡vÄæ¦ìªº¶ZÂ÷¹L´Á¤Ñ¼Æ, ¨Ì·Ó¡uF¡vÄæ¦ì»P¶ZÂ÷¥Ø«e¤é´Á­pºâ
  21.         '  ¦A¥Ñ¡§§Ö¹L´Áªº¡¨¦b¡uK¡vÄæ¦ì, Åã¥ÜÀu¥ý®³¨úªº¶¶§Ç
  22.         
  23.         ' Q3. ©ñ¤J´á®ðÂd«á¸ê®Æ·|¦s¦b¡yDatabase-¤J´á®ðÂd¡z¸ê®Æªí
  24.         '  ¥i§_À°³Â¥[¤J­pºâ¡uJ¡vÄæ¦ìªº¶ZÂ÷¹L´Á¤Ñ¼Æ, ¨Ì·Ó¡uF¡vÄæ¦ì»P¶ZÂ÷¥Ø«e¤é´Á­pºâ
  25.         '  ¦A¥Ñ¡§§Ö¹L´Áªº¡¨¦b¡uK¡vÄæ¦ì, Åã¥ÜÀu¥ý®³¨úªº¶¶§Ç

  26.         
  27.         St = "¶ZÂ÷¹L´Á¤Ñ¼Æ"
  28.         i(2) = Application.WorksheetFunction.Match(St, Rows(1), 0) '**¶Ç¦^¶ZÂ÷¹L´Á¤Ñ¼ÆªºÄæ¦ì
  29.      
  30.         With .Columns(i(2)).Range("a2:a" & .Range("a" & Rows.Count).End(xlUp).Row)  '
  31.         i(3) = i(2) - i(1)
  32.             
  33.              '.FormulaR1C1 = "=IF(ISNUMBER(RC[-2]),RC[-2]-TODAY(), """")"
  34.              .FormulaR1C1 = "=IF(ISNUMBER(RC[-" & i(3) & "]),RC[-" & i(3) & "]-TODAY(), """")"
  35.             
  36.              '**'¶ZÂ÷¹L´Á¤Ñ¼ÆªºÄæ¦ì¼g¤W¤½¦¡
  37.             
  38.             .NumberFormatLocal = "G/³q¥Î®æ¦¡"
  39.             .Value = .Value    '**¤½¦¡Âର­È
  40.             Set D = CreateObject("scripting.dictionary") '**¦r¨åª«¥ó
  41.             For Each e In .Cells
  42.                 If e <> "" Then            '¦³­ÈªºÀx¦s®æ
  43.                     D(e.Value) = ""        ' e.Value ¬°¦r¨åª«¥óªºkey
  44.                     If Rng Is Nothing Then
  45.                         Set Rng = e
  46.                     Else
  47.                         Set Rng = Union(Rng, e)  'Union ¤èªk   ¶Ç¦^¨â­Ó©Î¦h­Ó½d³òªº¦X¨Ö½d³ò¡C
  48.                     End If
  49.                 End If
  50.             Next
  51.             For Each e In Rng
  52.                 For i(1) = 1 To D.Count
  53.                     If e = Application.Small(D.keys, i(1)) Then
  54.                         'e¬°¦r¨åª«¥ókey­Èªº²Ä´X [i(1)] ¤pªº­È
  55.                         e.Offset(, 1) = i(1)   'Àu¥ý®³¨ú¶¶§Ç
  56.                         Exit For
  57.                     End If
  58.                 Next
  59.             Next
  60.         End With
  61.    End With
  62.    
  63.     '±Æ§Ç
  64.     'Q1-1. ¿é¤J©ñ¤J¦B½c¥\¯à, ½Ð°Ý¬O§_¥i¥H¿é¤J§¹¸ê®Æ«á¦Û°Ê¨Ì·Ó¡uC50¡vÄæ¦ì¥D­n±Æ§Ç, ¦A¥Ñ¡uJ50¡vÄæ¦ì¦¸­n±Æ§Ç¶Ü??

  65.    With Rng.EntireRow
  66.         'Q2-1. ¿é¤J¦^·Å°Ï¥\¯à, ½Ð°Ý¬O§_¥i¥H¿é¤J§¹¸ê®Æ«á¦Û°Ê¨Ì·Ó¡uC50¡vÄæ¦ì¥D­n±Æ§Ç, ¦A¥Ñ¡uJ50¡vÄæ¦ì¦¸­n±Æ§Ç
  67.        '**  key1:=.Cells(1, i(2)), Order1:=1 Àu¥ý®³¨ú¶¶§Ç¬°¥D±Æ§ÇÁä
  68.         .Sort key2:=.Cells(1, "c"), Order1:=1, key1:=.Cells(1, i(2)), Order1:=1, header:=xlNo
  69.         
  70.         'Q5. ¡y¨ú¥X¦^·Å°Ï¡z¡B¡y¨ú¥X´á®ðÂd¡z¸ê®Æªíªº®³¨ú¶¶§Ç¬O§_·|¦A¦¸­«·s±Æ§Ç???
  71.         ' **«ü¸Ì  ¸ê®Æªí¤º·|­«·s±Æ§Ç
  72.    End With
  73. End Sub
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¥»©«³Ì«á¥Ñ GBKEE ©ó 2016-10-12 07:41 ½s¿è

¦^´_ 6# v03586

5# ¬d¸ßªí³æ¼Ò²Õªºµ{¦¡½X¦³§ó·s

Sub Ex_Ans(Sh As Worksheet) ©ñ¦bModule1 (¤@¯ë¼Ò²Õ) ¨S¿ùªº

i(1) = Application.WorksheetFunction.Match(St, Rows(1), 0) '**¶Ç¦^½¦¯È¨ì´Á¤éªºÄæ¦ì
¦b2003ª©¨S¦³¿ù»~ªº
½Ð§ï¥Î¸Õ¸Õ¬Ý  i(1) = Sh.Rows(1).Find(St, LookIn:=xlValues, LookAt:=xlWhole).Column '**¶Ç¦^½¦¯È¨ì´Á¤éªºÄæ¦ì

Q2-2. ¿é¤J¦^·Å°Ï¥\¯à¤ñ¸û¯S§O, ¿é¤JLOT®É, ¥i§_±q¡yDatabase-¦B½c¡z¸ê®Æªí, §PÂ_
                      ¦pªG¦³¿é¤J¤@¼ËªºLOT, «h±q¡yDatabase-¦B½c¡z¸ê®Æªí±N­«Âиê®Æ§R°£??
  1. Sub ¨ú¥X¦^·Å°Ï()
  2.    Dim Rng As Range
  3.    '¥H¤Wµ{¦¡½X²²¤
  4.    ''Inputs(j) = InputBox(" ±z²{¦b±N­n§â½¦¯È±q¡y ¦^·Å°Ï¨ú¥X ¡z " & vbCrLf
  5.    '¥H¤Wµ{¦¡½X²²¤
  6.    'i = 2
  7.    'NotFound = True
  8.      '  Do
  9.     '    If Inputs(1) = Worksheets("Database-¦B½c").Cells(i, "D") Then
  10.     '    *********'¡y ¦^·Å°Ï¨ú¥X ¡z ¬O¦b ¦^·Å°Ï ¦Ó¤£¬O ¦B½c  !!!  *****
  11.    
  12.     '        Set Lot_Rng = Worksheets("Database-¦B½c").Cells(i, "D")
  13.     '        Worksheets("Database-¦B½c").Rows(i).Delete
  14.     '        NotFound = False
  15.     '       Exit Do
  16.     '     End If
  17.     '     i = i + 1
  18.     '  Loop While Worksheets("Database-¦B½c").Cells(i, "A") <> ""
  19.    
  20.    '    *********'¡y ¦^·Å°Ï¨ú¥X ¡z ¬O¦b ¦^·Å°Ï ¦Ó¤£¬O ¦B½c  !!!  *****
  21.    'Set Rng = Worksheets("Database-¦B½c").Range("d:d").Find(Inputs(1), LookIn:=xlValues, LookAt:=xlWhole)
  22.    Set Rng = Worksheets("Database-¦^·Å°Ï").Range("d:d").Find(Inputs(1), LookIn:=xlValues, LookAt:=xlWhole)
  23.    If Not Rng Is Nothing Then
  24.         Rng.EntireRow.Delete
  25.         
  26.         'Q2-2. ¿é¤J¦^·Å°Ï¥\¯à¤ñ¸û¯S§O, ¿é¤JLOT®É, ¥i§_±q¡yDatabase-¦B½c¡z¸ê®Æªí, §PÂ_
  27.         '              ¦pªG¦³¿é¤J¤@¼ËªºLOT, «h±q¡yDatabase-¦B½c¡z¸ê®Æªí±N­«Âиê®Æ§R°£??
  28.         Set Rng = Worksheets("Database-¦B½c").Range("d:d").Find(Inputs(1), LookIn:=xlValues, LookAt:=xlWhole)
  29.         If Not Rng Is Nothing Then Rng.EntireRow.Delete
  30.         
  31.    Else
  32.        MsgBox "§ä¤£¨ì¸ê®Æ < Can't not found data>"
  33.     End If
  34.     End Sub
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¥»©«³Ì«á¥Ñ GBKEE ©ó 2016-10-17 07:22 ½s¿è

¦^´_ 11# v03586

ªþÀÉ ¬Ý¬Ý¦³·N¨£¦A´£¥X

Ex.zip (1.06 MB)
¥i­×§ï¦p¤U :¥i¬O¥u¦³¤@µ§¸ê®Æ®É¥¦¬Oª½µÛ©ñ,¤£·|¾î©ñ
  1. ReDim Ar(0 To UBound(D(Trim(TextBox2))))
  2.                 For i = 0 To UBound(D(Trim(TextBox2)))
  3.                     Ar(i) = D(Trim(TextBox2))(i)  '''ªþÀɦp¦³¬O ListBox1 ±±¨î¶µ
  4.                     If i = 2 Then Exit For  'Åã¥Ü¤Tµ§
  5.                 Next
  6.                 ListBox1.List = Application.Transpose(Application.Transpose(Ar)) ''ªþÀɦp¦³¬O ListBox1 ±±¨î¶µ
½Æ»s¥N½X
¤èªk¤@
  1. If D.Count > 0 And D.exists(Trim(TextBox2)) Then
  2.             If UBound(D(Trim(TextBox2))) = 0 Then
  3.                 Ar = D(Trim(TextBox2))(0)
  4.                 With ListBox1
  5.                     .AddItem
  6.                    For i = 0 To UBound(Ar)
  7.                         .List(.ListCount - 1, i) = Ar(i)
  8.                     Next
  9.                 End With
  10.             Else
  11.                 ReDim Ar(0 To 2)
  12.                 For i = 0 To UBound(D(Trim(TextBox2)))
  13.                     Ar(i) = D(Trim(TextBox2))(i)  '''ªþÀɦp¦³¬O ListBox1 ±±¨î¶µ
  14.                     If i = 2 Then Exit For  'Åã¥Ü¤Tµ§
  15.                 Next
  16.                 ListBox1.List = Application.Transpose(Application.Transpose(Ar)) ''ªþÀɦp¦³¬O ListBox1 ±±¨î¶µ
  17.               End If
  18.         End If
½Æ»s¥N½X
¤èªk¤G
  1. If D.Count > 0 And D.exists(Trim(TextBox2)) Then
  2.             'ReDim Ar(0 To UBound(D(Trim(TextBox2))))
  3.             If UBound(D(Trim(TextBox2))) = 0 Then
  4.                 'Ar = D(Trim(TextBox2))
  5.                 With Range("A" & Rows.Count).Resize(, UBound(D(Trim(TextBox2))(0)) + 1)
  6.                     .Value = D(Trim(TextBox2))(0)
  7.                     ListBox1.List = .Value
  8.                     .Cells.Clear
  9.                 End With
  10.             Else
  11.                 ReDim Ar(0 To 2)
  12.                 For i = 0 To UBound(D(Trim(TextBox2)))
  13.                     Ar(i) = D(Trim(TextBox2))(i)  '''ªþÀɦp¦³¬O ListBox1 ±±¨î¶µ
  14.                     If i = 2 Then Exit For  'Åã¥Ü¤Tµ§
  15.                 Next
  16.                 ListBox1.List = Application.Transpose(Application.Transpose(Ar)) ''ªþÀɦp¦³¬O ListBox1 ±±¨î¶µ
  17.             End If
  18.         End If
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¦^´_ 13# v03586

¤£­­¨î®æ¦¡ Msg = St <> ""
¦^·Å°Ï»P´á®ðÂdªº­pºâ¤è¦¡¤£¦P, ¬O¥ÑFÄæ¦ì¡y¦^·Å«á¨Ï¥Î´Á­­¡z,§PÂ_¶ZÂ÷²{¦bÁÙ¦³¦h¤Ö¤Ñ¨ì´Á
¥i§ï¦p¤U
  1. Sub Ex_Ans()
  2.     Dim St As String, I(1 To 3) As Integer, d As Object, E As Variant, Rng As Range, Ar(), Arr()
  3.     With Sh
  4.         St = "½¦¯È»s³y¤é"
  5.         I(1) = Sh.Rows(1).Find(St, LookIn:=xlValues, LookAt:=xlWhole).Column
  6.         .Columns(I(1)).TextToColumns Destination:=.Cells(1, I(1)), DataType:=xlDelimited, _
  7.             FieldInfo:=Array(1, 5), TrailingMinusNumbers:=True  '***(¤å¦r®æ¦¡, Âà´«¬°¤é´Á)
  8.         
  9.         ' **¶Ç¦^½¦¯È¨ì´Á¤éªºÄæ¦ì  ©Î  ¦^·Å«á¨Ï¥Î´Á­­ ªºÄæ¦ì
  10.         If InStr(Sh.Name, "¦B½c") Then St = "½¦¯È¨ì´Á¤é" Else St = "¦^·Å«á¨Ï¥Î´Á­­"
  11.         I(1) = Sh.Rows(1).Find(St, LookIn:=xlValues, LookAt:=xlWhole).Column '**¶Ç¦^½¦¯È¨ì´Á¤éªºÄæ¦ì
  12.         If St = "¦^·Å«á¨Ï¥Î´Á­­" Then
  13.             Application.Calculation = xlManual      '¬¡­¶Ã¯ªº­pºâ: ¤â°Ê
  14.             With .Columns(I(1)).SpecialCells(xlCellTypeConstants)
  15.                 .Cells = .Value                                  '** ¤å¦r®æ¦¡ªº¼Æ¦r Âର¼Æ­È
  16.             End With
  17.             Sh.Calculate               '**Calculate ¤èªk  ­pºâ©Ò¦³¶}±Òªº¬¡­¶Ã¯¡B¬¡­¶Ã¯¤¤ªº¯S©w¤u§@ªí©Î¤u§@ªí¤¤«ü©w½d³òªºÀx¦s®æ.
  18.             Application.Calculation = xlAutomatic  '¬¡­¶Ã¯ªº­pºâ: ¦Û°Ê
  19.         End If
  20.         If InStr(Sh.Name, "¦B½c") Then
  21.             .Columns(I(1)).TextToColumns Destination:=.Cells(1, I(1)), DataType:=xlDelimited, _
  22.             FieldInfo:=Array(1, 5), TrailingMinusNumbers:=True  '***(¤å¦r®æ¦¡, Âà´«¬°¤é´Á)
  23.         End If
  24.         St = "¶ZÂ÷¹L´Á¤Ñ¼Æ"
  25.         I(2) = Sh.Rows(1).Find(St, LookIn:=xlValues, LookAt:=xlWhole).Column
  26.         If .Range("a" & Rows.Count).End(xlUp).Row = 1 Then Exit Sub
½Æ»s¥N½X
3. ¬d¸ß¥ý¶i¥ý¥X¥\¯à ³¡¤À¬d¸ß®Æ¸¹·|µLªk±a¥X¸ê®Æ ¦b11# ¦³¦^ÂÐ ¤èªk¤@,¤èªk¤G
³o¸Ì­×§ï
  1. Private Sub ComboBox2_Change()
  2.     Dim Rng As Range, Ar, I As Integer
  3.     With ListBox1
  4.         .Clear
  5.         If ComboBox2.ListIndex = -1 Then Exit Sub
  6.         Ar = Dt(ComboBox2.Value)
  7.         If UBound(Ar) = 0 Then
  8.             .AddItem
  9.             For I = 0 To UBound(Ar(0))
  10.                 .List(0, I) = Ar(0)(I)
  11.             Next
  12.         Else
  13.             .List = Application.Transpose(Application.Transpose(Ar))
  14.         End If
  15.     End With
  16. End Sub
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¦^´_ 15# v03586
  1. Private Sub TextBox4_Change()
  2.      Dim St As String, Msg As Boolean
  3.         St = Trim(TextBox4)
  4.         Msg = St <> ""
  5.        TheMsg 4, Msg
  6. End Sub
½Æ»s¥N½X
  1. Private Sub Lot_Get()
  2.     Dim I As Long, St As String, B As String, C As String, d As String, Ar(), X As Integer
  3.     Set Dt = CreateObject("ScripTING.DICTIONARY")
  4.     'X = IIf(InStr(ActiveSheet.Name, "¦B½c"), 9, 10)
  5.     With Sh
  6.         X = IIf(InStr(.Name, "¦B½c"), 9, 10)
  7.         I = ShRow
  8.         Do While .Cells(I, "C") <> ""
  9.             B = .Cells(I, "B"):    C = .Cells(I, "C"):  d = .Cells(I, "D"):    St = Format(.Cells(I, X), "0.0")
  10.             If Not Dt.EXISTS(C) Then
  11.                 Dt(C) = Array(Array(B, C, d, St))
  12.             Else
  13.                 Ar = Dt(C)
  14.                 ReDim Preserve Ar(LBound(Ar) To UBound(Ar) + 1)
  15.                 Ar(UBound(Ar)) = Array(B, C, d, St)
  16.                  Dt(C) = Ar
  17.                  Ar = Dt(C)
  18.             End If
  19.             I = I + 1
  20.         Loop
  21.     End With
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¥»©«³Ì«á¥Ñ GBKEE ©ó 2016-10-20 05:06 ½s¿è

¦^´_ 17# v03586
  1. Private Sub TheMsg(T As Integer, Msg As Boolean)   ''** µ{¦¡§@¥Î  ¸ê®Æ¿é¤J®æ¦¡ªºÀˬd
  2.     '** ¥G¥s¦¹µ{¦¡ ¶·±a¦³ °Ñ¼Æ1   ,°Ñ¼Æ2
  3.     Dim St As String
  4.     Text_Ar(T).BackColor = IIf(Msg, ¥¿±`¦â, ¿ù»~¦â)
  5.     Text_Msg(T) = Msg
  6.     ComButton_Àˬd
  7.     If ComButton.Enabled Then ListBox1_Change
  8.     If ComButton.Enabled Then
  9.         ComButton.SetFocus          '**SetFocus ¤èªk ±N¾nÂI²¾¨ì¦¹ª«¥óªº°õ¦æ­ÓÅé¤W¡C
  10.     ElseIf Msg Then                     '**¿é¤J®æ¦¡ªº¥¿½T ¤U²¾¦Ü¤U¤@­Ó±±¨î¶µ
  11. '*****************³o¸Ì¸ÕµÛ­×§ï ****************************
  12.         If T > 2 And T <> 5 And T <> UBound(Text_Ar) Then Text_Ar(T + 1).SetFocus
  13. '********************************************************
  14.     End If
  15. End Sub
½Æ»s¥N½X
¦^·Å«á¨Ï¥Î´Á­­ ®æ¦¡ »P ©ñ¤J®É¶¡®æ¦¡ Private Sub TextBox9_Change() ¬O¬Û¦Pªº
  1. Private Sub TextBox6_Change()
  2.    Dim St, Msg As Boolean, Ar
  3.    '®æ¦¡  ¤é´Á&®É¶¡
  4.     St = Trim(TextBox6)
  5.     Msg = UBound(Split(St, "/")) = 2 And UBound(Split(St, " ")) = 1 And UBound(Split(St, ":")) = 1: If Not Msg Then GoTo Ne
  6.     Ar = Split(St, " ")
  7.     Msg = IsDate(Ar(0)): If Not Msg Then GoTo Ne
  8.     Msg = IsDate(Ar(1)): If Not Msg Then GoTo Ne
  9.     If Msg Then TextBox6 = Format(TextBox6, ¤é´Á®É¶¡®æ¦¡)
  10. Ne:
  11.     TheMsg 6, Msg
  12. End Sub
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¥»©«³Ì«á¥Ñ GBKEE ©ó 2016-10-20 05:54 ½s¿è

¦^´_ 19# v03586
¦^·Å¨Ï¥Î´Á­­ÂI¨â¤UÅܦ¨1899¦~...
­×§ï³o¸Ì
  1. Sub ©ñ¤J¦B½c()   'Input ¦B½c (¸ê®Æ¦s¤J¡yDatabase-¦B½c¡z)
  2.     Set Sh = Sheets("Database-¦B½c")
  3.     ¦^·Å«á¨Ï¥Î´Á­­ = Now + 2       '**µ¹­È
  4.     Com_Title = " [ ©ñ¤J¦B½c ]"
  5.     Form_InPut.Show
  6. End Sub
½Æ»s¥N½X
  1. If T = 3 Or T >= 6 And T <> UBound(Text_Ar) Then Text_Ar(T + 1).SetFocus
  2.         '** 1¤u¸¹ , 2¼h¬[½s¸¹ , 4LOT, 5PCS  **¤£³]®æ¦¡¤£¸õ¨ì¤U¤@¿é ¤J±±¨î¶µ
  3.         '**3Film P/N , 6¦^·Å«á¨Ï¥Î´Á­­, 7½¦¯È»s³y¤é 8 ½¦¯È¨ì´Á¤é **'¸õ¨ì¤U¤@¿é ¤J±±¨î¶µ
  4.         '** 9 ©ñ¤J®É¶¡=>Text_Ar(T + 1).SetFocus ·|¦³¿ù»~ªº
½Æ»s¥N½X
¤u¸¹ ¸ò ¼h¬[½s¸¹....   ¸Ñ°£­­¨î
  1. Private Sub TextBox1_Change()          '** ±±¨î¶µ¦³ÅÜ°Ê : µ{¦¡§@¥Î  ¸ê®Æ®æ¦¡ ªºÀˬd
  2.      '**¤£­­¨î®æ¦¡
  3.      TheMsg 1, Trim(TextBox1) <> ""   '¤£­­¨î®æ¦¡
  4. End Sub
½Æ»s¥N½X
³]©w±ø½X®æ¦¡
  1. Private Sub TextBox7_Change()
  2.     '®æ¦¡  ±ø½X 8 ¦ì¼Æ
  3.     Dim St(1 To 2) As String, Msg As Boolean, Ar
  4.     St(1) = Trim(TextBox7)
  5.     Msg = Len(St(1)) = 8 And IsNumeric(St(1)): If Not Msg Then GoTo Ne
  6.     St(2) = Mid(St(1), 1, 4) & "/" & Mid(St(1), 5, 2) & "/" & Mid(St(1), 7, 2)
  7.     Msg = IsDate(St(2)): If Not Msg Then GoTo Ne         '**¤é´Á¥¿½T
  8.     Msg = DateValue(St(2)) < Date: If Not Msg Then GoTo Ne    '**½¦¯È»s³y¤é¥²¤p©ó·í¤é
  9. Ne:
  10.     TheMsg IIf(Label6.Enabled, 7, 6), Msg
  11. End Sub
  12. Private Sub TextBox8_Change()
  13.      '®æ¦¡  ±ø½X 8 ¦ì¼Æ
  14.     Dim St(1 To 3) As String, Msg As Boolean, Ar
  15.    St(1) = Trim(TextBox8)
  16.     Msg = Len(St(1)) = 8 And IsNumeric(St(1)): If Not Msg Then GoTo Ne
  17.     St(2) = Mid(St(1), 1, 4) & "/" & Mid(St(1), 5, 2) & "/" & Mid(St(1), 7, 2)  '½¦¯È¨ì´Á¤é
  18.     Msg = IsDate(St(2)): If Not Msg Then GoTo Ne
  19.     Msg = Text_Msg(IIf(Label6.Enabled, 7, 6)): If Not Msg Then GoTo Ne '½¦¯È»s³y¤é¬O§_¥¿½T
  20.     St(3) = Trim(TextBox7)
  21.     St(3) = Mid(St(3), 1, 4) & "/" & Mid(St(3), 5, 2) & "/" & Mid(St(3), 7, 2)  '**'½¦¯È»s³y¤é
  22.     Msg = DateValue(St(2)) > DateValue(St(3))                       '**½¦¯È¨ì´Á¤é¥²¤j©ó½¦¯È»s³y¤é
  23. Ne:
  24.     TheMsg IIf(Label6.Enabled, 8, 7), Msg
  25. End Sub
  26. '**³]©w±ø½X®æ¦¡ «á»Ý­×§ï
  27. Private Sub ComButton_Click()          '**±±¨î¶µªº¨Æ¥ó («ö¤U±±¨î¶µ)
  28.     Dim i As Integer, XR As Integer
  29.     If MsgBox(Join(Text_Ar, vbLf), vbYesNo, "   ** ½T©w " & Com_Title & "  **") = vbYes Then
  30.         '**Join ¨ç¼Æ ¶Ç¦^¤@­Ó¦r¦ê , ¸Ó¦r¦ê¬O³z¹L³sµ²¬Y­Ó°}¦C¤¤ªº¦h­Ó¤l¦r¦ê¦Ó«Ø¥ßªº
  31.         XR = Application.CountA(Sh.[A:A])
  32.         With Sh.Range("A" & XR).Offset(1)
  33.             For i = 1 To UBound(Text_Ar)               '**UBound ¨ç¼Æ ¶Ç¦^ Long­È¡Aªí¥Ü«ü©w°}¦C¬Yºû³Ì¤j¥i¨Ï¥Îªº°}¦C¯Á¤Þ¡C
  34.                  If InStr(Sh.Name, "¦B½c") And (i = 6 Or i = 7) Then
  35.                     .Cells(1, i) = Mid(Text_Ar(i), 1, 4) & "/" & Mid(Text_Ar(i), 5, 2) & "/" & Mid(Text_Ar(i), 7, 2)
  36.                  ElseIf InStr(Sh.Name, "¦B½c") = 0 And (i = 7 Or i = 8) Then
  37.                     .Cells(1, i) = Mid(Text_Ar(i), 1, 4) & "/" & Mid(Text_Ar(i), 5, 2) & "/" & Mid(Text_Ar(i), 7, 2)
  38.                  Else
  39.                     .Cells(1, i) = UCase(Text_Ar(i).Text)  '**UCase ¨ç¼Æ ¶Ç¦^¤@­Ó Variant (String)¡A©Ò§t¬°Âন¤j¼g¤§¦r¦ê¡C
  40.                 End If
  41.             Next
  42.         End With
  43.         DataBase_Show
  44.     End If
  45.     ListBox1_Change
  46. End Sub
½Æ»s¥N½X
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

¦^´_ 21# v03586

ªþÀɸոլÝ

Ex.zip (878.16 KB)
   

[±ø½X] ¨S±µÄ²¹L,¦p¦³°ÝÃD,§Ú¤£ª¾.
·P®¦ªº¤ß......(¦b³Â»¶®a±Ú°Q½×°Ï.¥Î¤ß¾Ç²ß·|¦³¶i¨Bªº)
¦ý¸ê·½µL­­,«á´©¦³­­,  ¤@¤Ñ1¤¸ªºÃÙ§U,¤H¤H¦³¯à¤O.

TOP

        ÀR«ä¦Û¦b : ¤@¥y·Å·xªº¸Ü¡A´N¹³©¹§O¤H¨­¤WÅx­»¤ô¡A¦Û¤v·|ªg¨ì¨â¤Tºw¡C
ªð¦^¦Cªí ¤W¤@¥DÃD