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

[µo°Ý] ¦h­Ó±ø¥ó¼Æ¶q¤À©î¤Î¹j¦æ¡C

[µo°Ý] ¦h­Ó±ø¥ó¼Æ¶q¤À©î¤Î¹j¦æ¡C

¥»©«³Ì«á¥Ñ stephenlee ©ó 2021-3-12 01:11 ½s¿è

²Ä¤@­Ó¤u§@ªí¬O¸ê®Æ, ¦ÓLÄæ©MMÄæ ¬O­n®Ú¾Úitem ¨Ó°µ©î¼Æ­n¨D, ¥­®ÉL©MMÄæ¬O¨S¦³¸ê®Æªº,§Ú¥´¤W¥h¬O¬°§@»¡©ú¡C

AÄæ¦ÜIÄæ¬O¸ê®Æ,¦ý§Ú­n®Ú¾ÚDÄæ item ³o­Ó¶µ¥Ø¨Ó°µ¤À©î¼Æ¶q¤Î¹j¦æ¡C (©î¼Æ©M¹j¦æªºµ²ªG¥H·s¼W¤@±i¤u§@ªí§@Åã¥Ü)

³Ì¥D­n®Ú¾ÚDÄæ¤ÎEÄæ¨Ó¤ÀªR­n©îªº­n¨D¡C

¨Ò¦p item ¬° 044  ­n©î 1000  , 050 ­n©î2000 ,055 ­n©î1500 ªº¼Æ¶q¡C
¾l¼Æ¦b100 ¤º¥i¥H¤£¥Î©î¼Æ,¦Ó¨S¦³¶W¹L©î¼Æ­n¨Dªº¼Æ¶q,«h§¹¥þ¤£¥Î°µ°Ê§@,¸ê®Æ·Ó¡C


¨Ò¦p044   


¦pªG­è¦n1000 ´N¤£¥Î°µ¥ô¦ó°Ê§@, ¤Ö©ó1000³£¬O¡C

2100   ´N©î  1 ¦Ü1000=1000,  1001¦Ü2100=1100   

2105   ´N©î  1¦Ü1000=1000,   1001¦Ü2000=1000,  2001¦Ü2105=105 , ¦]¾l¼Æ¶W¹L100, ©Ò¥H·í·s¤@­Ó¼Æ¶q,   


·í§PÂ_DÄ欰item ¬O¤°»ò«á,¦A®Ú¾ÚEÄ檺¼Æ¶q­n°µ¤À©î°Ê§@¡C

°µ§¹¤§«á¦A°µ¹j¦æ°Ê§@, ¦]§Ú­n°µ¶l¥ó¦X¨Ö¥\¯à¦bWord ¤º,­n®Ú¾Úgroup °µ¤À¹j¡C(¶l¥ó¦X¨Ö¬O¤@±iA4 Size, ¥´¾îªº,¦³4­Ó¤j®æ,
¨C­Ó®æ³£¬°¤@µ§¸ê®Æ,§Y¬O4¦C,©Ò¥H­n§â¤£¦Pgroup¤À¶},¤£¯à²V¦b¤@°_¡C)

¦pªGgroup 1 ¦³4¦æ ´N¤£¥Î¹j¦æ,¶KµÛgroup 2 ,¦pªGgroup 2 ¬°3¦æ,§Y­n·s¼W¤@¦æ,»Pgroup 3¤À¶}



¨C4µ§¸ê®Æ¬°¤@²Õ, ¥H4¬°³æ¦ì¡C

¤£º¡4ªº´N·s¼W¦C¼Æ¬°4, ¦P®É­nº¡¨¬group¬O­n¦b¤@°_ªº¡C

¨Ò¦p ³B²z«áªº¸ê®Ægroup 1,·í§Ú©î§¹¼Æ«á©Ò±o¥Xªº¦C¼Æ¬O19¦C,©Ò¥H­n¥[¤@¦æ Åܦ¨ 20 ¦C¡C

¦pªG°µ§¹©î¼Æ¨Ò¦pgroup 2 §Ú±o¥X¦³6¦C,©Ò¥H­n¥[2¦C¦¨8¡C

¦pªG°µ§¹group ¤À©î¼Æ«á, ­è¦n¬O4, ¨º»ò«K¤£¥Î·s¼W¦C¼Æ¡C
§_«h³£­n·s¼W¦C¼Æ¦Ü³Ì±µªñªº4­¿¼Æ¦C¼Æ¡C

¦P®Éitem ¨º¤£¤@©w¬O¦P®É¶¡¦³5­Óitem ¦³®É­Ô¬O1­Ó,¦³®É­Ô¬O3­Ó¡C

Á`¤§¬O­n®Ú¾Úitem ¨ºªº©î¼Æ­n¨D©î¼Æ¶q©MEÄæ¬Ý¼Æ¶q¬O§_¦³¶W¹L´N°µ°Ê§@,©î§¹¼Æ¶q¦A¥Îgroup¨ºªº¸ê®Æ°µ¹j¦æ¡C

¼È®É¦³5­Óitem ­n©î¼Æ, ¥t¥~¬O§_¥i¥H¦A³]©w¥i¥H±N¨Ó¦pªG¦h©ó5­Óitem ,¨Ò¦p²Ä6­Óitem ­n©î¥t¥~¤@­Ó¼Æ¶q,¬O¤£¬O¥i¥H
ÃB¥~¦A¼W¥[,¥t¥~dÄæ¦Üi ¬O¤@­Ó¸s²Õ,¦pªG§Ú¦³§ó¦h¸ê®Æ­n¦bDÄæ«e´¡¤J,¨º»ò¦ì¸m¦³ÅÜ°Ê,dÄæ©MiÄæ¬O©T©w¦WºÙ¸ê®Æ¬O¤£·|¦³¯S§O§ó§ï,©T©w6Äæ
,¦ý¦pªG§Ú·s¼W¤F¤TÄ樺»òdÄæ¦ÜiÄæ¦U·|°h«á3Äæ,¦pªG§Ú·Q¦A°µ¤À©î¼Æ¶q©M¹j¦æ,³o­Ó¥i¤£¥i¥H°µ¨ì(ªþªí1), ¦p¦ó³]©w?


¦pªG¤£¦æªº¸Ü,¥ý¨Ï¥Î5­Óitem ´N¥i¥H¡C



¤£¦n·N«ä,«Üªø¤å,³o­Ó«ÜÃø¾Þ§@,©Ò¥H¬Ý¦U¦ì¥i§_À°¦£¡C¦b¦¹¸÷Á¦U¦ì¡C



question1.zip (12.47 KB)

¥»©«³Ì«á¥Ñ Andy2483 ©ó 2023-11-9 15:47 ½s¿è

ÁÂÁ½׾Â,ÁÂÁ¦U¦ì«e½ú
«á¾ÇÂǦ¹©«¥H1#½d¨ÒÀÉ(question1.zip) ½m²ß°}¦C.¦r¨å»PÅÞ¿è­È¹Bºâ,¾Ç²ß¤è®×¦p¤U,½Ð¦U¦ì«e½ú«ü±Ð

¸ê®Æªí:


°õ¦æµ²ªG:



Option Explicit
Sub TEST()
Dim Brr, Crr, Z, V&, Q&, R&, i&, ii&, j%, T$, T1$
Set Z = CreateObject("Scripting.Dictionary")
Brr = Range([M2], [L65536].End(xlUp))
For i = 1 To UBound(Brr):  Z(Format(Brr(i, 1), "000")) = Val(Brr(i, 2)): Next
Brr = Range([I1], [A65536].End(xlUp)(2))
ReDim Crr(1 To 10000, 1 To 9)
For j = 1 To 9: Crr(1, j) = Brr(1, j): Next:  R = 1
For i = 2 To UBound(Brr) - 1
   T = Format(Brr(i, 4), "000"):   T1 = Format(Brr(i + 1, 4), "000")
   V = Z(T):     Q = Brr(i, 8)
   For ii = 0 To Q \ V
      R = R + 1
      For j = 1 To 9: Crr(R, j) = Brr(i, j): Next
      Crr(R, 4) = "'" & T
      Crr(R, 6) = V * ii + 1
      Crr(R, 7) = V * (ii - (ii <> Q \ V)) - (ii = Q \ V) * (Q Mod V)
      Crr(R, 8) = V * -(ii <> Q \ V) - (ii = Q \ V) * (Q Mod V)
   Next
   If T <> T1 Then R = (((R - 1) \ 4) - ((R - 1) Mod 4 <> 0)) * 4 + 1
Next
Workbooks.Add
[A1].Resize(R, 9) = Crr
Set Z = Nothing: Erase Brr, Crr
End Sub
¥Î¦æ°Ê¸Ë¸mÂsÄý½×¾Â¾Ç²ß«Ü¤è«K,ÁÂÁ½׾¸gÀç¹Î¶¤
½Ð¤j®a¤@°_¤W½×¾Â¨Ó¥æ¬y

TOP

¦^´_  stephenlee

­è¤~µo²{ ¤p©ó100¤£¤À¦³°ÝÃD §ï¤F¤@¤U  ¦³ªÅ¦AÀ°§Ú¸Õ¸Õ¬Ý¬O§_¥¿½T ·PÁÂ
item  ¦³¼W¥[ ...
°a¤ªºµ µoªí©ó 2021-3-14 22:35



¸÷Á¤j¤j,²{¦bªì¨B¸Õ¤F¤@¤U,¼È®Éº¡¨¬­n¨D,«Ý§Ú¦A²`¤J°µ¤@¤U,¦A¨Ó¬Ý¬O§_­n¦A³Â·Ð,«D±`·P¿E¤j¤jªá®É¶¡À°¦£¡C«D±`·PÁÂ

TOP

¦^´_ 5# stephenlee

­è¤~µo²{ ¤p©ó100¤£¤À¦³°ÝÃD §ï¤F¤@¤U  ¦³ªÅ¦AÀ°§Ú¸Õ¸Õ¬Ý¬O§_¥¿½T ·PÁÂ
item  ¦³¼W¥[ªº®É­Ô ©î¤À¼Æ¤]·|¼W¥[¶Ü?  ´¡¤JÄæ¦ì¦³¨S¦³³W«h?
°ÝÃD0314.rar (21.29 KB)

TOP

¥»©«³Ì«á¥Ñ °a¤ªºµ ©ó 2021-3-13 23:05 ½s¿è

¦^´_ 5# stephenlee
¦³°Ñ¦Ò·Ç¤j¼g¹Lªº©î¤À¤èªk ¦ý§Ú¨S¦³¥Î¦r¨å ¦]¬°ÁÙ¤£¬O«Ü¼ô±x
¦³ªÅ¤]À°§Ú¸Õ¸Õ¬Ý ¬O¤£¬O§A­nªº ·PÁÂ
°ÝÃD0313.rar (20.77 KB)

TOP

³Æª`¤@¤U: ªþªí1 ¸ê®Æ©Mªþªí1 µ²ªG ¥u¬O¥t¥~¤@­Ó¬¡­¶Ã¯ªº¸ê®Æ 2­Ó¤u§@ªí¡C§Ú¬O§@»¡©ú¦Ó·s¼W¡C

¥­®É¥²©w¥u¦³1­Ó¤u§@ªí,"­n³B²zªº¸ê®Æ"¨º¤@­¶, ¦Ó¨C¦¸³B²z«á,§Ú·|§R°£·s¼Wµ²ªGªº¨º±i¤u§@ªí¡C

TOP

¥»©«³Ì«á¥Ñ stephenlee ©ó 2021-3-13 13:54 ½s¿è
1) ¥­®ÉL©MMÄæ¬O¨S¦³¸ê®Æªº,§Ú¥´¤W¥h¬O¬°§@»¡©ú???
__¤]´N¬O®Ú¥»¨S¦³L/MÄæ¸ê®Æ, ¦UITEM¼Æ¶q¬O©T©wªº, ­n¥Ñ ...
­ã´£³¡ªL µoªí©ó 2021-3-13 10:34



1) ¥­®ÉL©MMÄæ¬O¨S¦³¸ê®Æªº,§Ú¥´¤W¥h¬O¬°§@»¡©ú???
__¤]´N¬O®Ú¥»¨S¦³L/MÄæ¸ê®Æ, ¦UITEM¼Æ¶q¬O©T©wªº, ­n¥Ñµ{¦¡¥h¼g©w???

¬Oªº,Àɮ׬O¤£·|¦³ ³o¨Çitem ªº©î¼Æ­n¨DÅã¥Üªº,¥u¬O§Ú¥´¦b¨º¤è«K§Ú»¡©ú,¥»¨­­n¾aVBA ¥h»{¬O¨º­Óitem ¹ïÀ³­n©î¦h¤Ö¼Æ¡C


2) ¦pªG·s¼W¤F¤TÄ樺»òd:iÄæ¦U·|°h«á3Äæ,¦pªG§Ú·Q¦A°µ¤À©î¼Æ¶q©M¹j¦æ,³o­Ó¥i¤£¥i¥H°µ¨ì(ªþªí1), ¦p¦ó³]©w?
__µ²ªGªíÄæ¼Æ¨Ì·Ó¸ê®ÆªíÄæ¼Æ, ÁÙ¬O¤£²z·|¨º¦h¥X¨Óªº3Äæ???

·N«ä¬O,§Ú²{¦b¦³³o­Ó"­n³B²zªº¸ê®Æ",¤u§@ªí¡C¸ê®Æ¥ÑAÄæ¦ÜIÄæ¡C ­n°µ©î¼Æ©M¤À¹j¦æ¼Æ¡C

°²³]§ÚÁÙ¦³¥t¥~¤@­Ó¬¡­¶Ã¯¤ºªº ¥t¥~¤@±i¤u§@ªí,³£¬O­n°µ©î¼Æ©M¤À¹j¦æ¼Æ,·Q°£¤F³o­Ó"­n³B²zªº¸ê®Æ" °µ¤@­Óª©¥»¥~¡C

¥i¥HÅý§Ú¥i¥H§â¤j¬ù³o¼Ëªº¤èªk®M¥Î¦Ü¥t¥~¤@­Ó¬¡­¶Ã¯ªº¥t¥~¤@±i¤u§@ªí,¦P®ÉDÄæ¦ÜIÄæ ³o6Ä檺Äæ¦ì¦WºÙ
¥²©w¬O©T©w,¤]´N¬O¤@­Ó¸s²Õ,¦Ó¬O¸ê®Æ¤£¦P,°£¤FEÄæ¨S¦³Äæ¦ì¦WºÙ¥~¡C

¨Ò³]§Ú¦b"­n³B²zªº¸ê®Æ",¥ÑDÄæ¶}©l´¡¤J¤TÄæ,¨º»ò¥»¨­ªºDÄæ¦ÜIÄæ´N·|«á°h¤TÄæ, ¦Ó´¡¤J¤TÄæ«á,³£­n°µ¨ì©î¼Æ©M¤À¹j¦æ¼Æ¡C



¦ý¦]´¡¤F¤TÄæ©Ò¥H¦ì¸m¸õ°Ê¤F,©Ò¥H·Q¦³¤@­Óª©¥»¥i¥HÆF¬¡¤@ÂI¡C
¨Ò¦p"ªþªí1 ¸ê®Æ" ¬O¥t¥~¤@­Ó¬¡­¶Ã¯ªº¥t¥~¤@±i¤u§@ªí,¦ý¦b¸s²Õ«e·s¼W¤F¤TÄæ,¤£¹L³£¬O­n°µ¤À©î¼Æ¶q©M¤À¹j¦æ¼Æ, ¦pµ²ªG"ªþªí1 µ²ªG"

¦Ó³£¦³®É­Ô¤£¬O´¡¤J¤TÄæ,¥i¯à1-2Äæ,¼Æ¦r¤£½T©w,«ö±¡ªp»Ý­n¡C ¦ý¨º6­Ó¸s²Õ¥²©w¦b¤@°_¡C


3) ITEM ¬O©T©w±Æ¦b¤@°_ªº??? ¦Ó¤£¬O¶Ã§Ç.
item ¨º¬O¦n¹³2¨º¼Ë,¥i¯à·|¦³¦h¦³¤Ö,¦P®É¤]­n·s¼W©Î´î¤Öitem ©M¹ïÀ³¤À§Oªº©î¼Æ¼Æ¶q¡C,¼È®É³Ì¦h5­Óitem ,³Ì¤Ö 2­Ó¦Ó¤w

¤Ó·PÁ¤F¡C

update.zip (13.93 KB)

TOP

¥»©«³Ì«á¥Ñ ­ã´£³¡ªL ©ó 2021-3-13 10:36 ½s¿è

1) ¥­®ÉL©MMÄæ¬O¨S¦³¸ê®Æªº,§Ú¥´¤W¥h¬O¬°§@»¡©ú???
__¤]´N¬O®Ú¥»¨S¦³L/MÄæ¸ê®Æ, ¦UITEM¼Æ¶q¬O©T©wªº, ­n¥Ñµ{¦¡¥h¼g©w???

2) ¦pªG·s¼W¤F¤TÄ樺»òd:iÄæ¦U·|°h«á3Äæ,¦pªG§Ú·Q¦A°µ¤À©î¼Æ¶q©M¹j¦æ,³o­Ó¥i¤£¥i¥H°µ¨ì(ªþªí1), ¦p¦ó³]©w?
__µ²ªGªíÄæ¼Æ¨Ì·Ó¸ê®ÆªíÄæ¼Æ, ÁÙ¬O¤£²z·|¨º¦h¥X¨Óªº3Äæ???

3) ITEM ¬O©T©w±Æ¦b¤@°_ªº??? ¦Ó¤£¬O¶Ã§Ç.

TOP

¦^´_ 1# stephenlee


¸Õ¸Õ¬Ý,¼g¤£¦n,¦A¬Ý¦³¨S¦³°ª¤â¥X¤â
¥t¥~050¤£¬O2000¤À©î¶Ü??,¬°¦ó§Aªº½d¨Ò²Ä¤@²Õ2000¤À©î,²Ä¤G²Õ¤SÅܦ¨2100¤À©î(²Ä¤G²Õ­È­è¦n¬°2100,©Ò¥H½d¨Ò¨S¤À©î)

Sub ex()
Dim X%, Y%, K%, Z%, Count%, Check$, a As Object, d As Object
Set d = CreateObject("Scripting.Dictionary")
Sheets("ªþªí1").UsedRange.ClearContents
Sheets("ªþªí1").[a1:L1] = Array("Line", "RP", "CP", "job 1", "job 2", "job 3", "item", " ", "f", "t", "QTY", "group")
For Each a In Sheets("­n³B²zªº¸ê®Æ").Range([L2], [L2].End(4))
   d(a.Value) = a.Offset(, 1)
Next
For Each a In Sheets("­n³B²zªº¸ê®Æ").Range([D2], [D65535].End(3))
   If Check = "" Then
      Check = a.Value
   ElseIf Check <> a.Value Then
      Z = 4 - (Count Mod 4)
      Count = 0
      Check = a.Value
   End If
   If d.exists(a.Value) Then
      With Sheets("ªþªí1")
         K = 1: X = 0
         If a.Offset(, 1) > d(a.Value) Then
            For Y = 1 To WorksheetFunction.Quotient(a.Offset(, 1), d(a.Value))
               a.Offset(, -3).Resize(, 3).Copy .[a65535].End(3).Offset(1 + Z).Resize(, 3)
               .[g65535].End(3).Offset(1 + Z).Resize(, 6) = Array(a, a.Offset(, 1), K, X + d(a.Value), d(a.Value), a.Offset(, 5))
               K = .[I65535].End(3) + d(a.Value)
               X = .[J65535].End(3)
               Z = 0
            Next
               a.Offset(, -3).Resize(, 3).Copy .[a65535].End(3).Offset(1 + Z).Resize(, 3)
               .[g65535].End(3).Offset(1 + Z).Resize(, 6) = Array(a, a.Offset(, 1), d(a.Value) + .[I65535].End(3), a.Offset(, 1), a.Offset(, 1) Mod d(a.Value), a.Offset(, 5))
               Count = Y + Count
         Else
            a.Offset(, -3).Resize(, 3).Copy .[a65535].End(3).Offset(1 + Z).Resize(, 3)
            .[g65535].End(3).Offset(1 + Z).Resize(, 6) = Array(a, a.Offset(, 1), 1, a.Offset(, 1), a.Offset(, 1), a.Offset(, 5))
            Count = Count + 1
            Z = 0
         End If
      End With
   End If
Next
Set d = Nothing
End Sub

TOP

        ÀR«ä¦Û¦b : ÀR§¤±`®¦¤v¹L¡B¶¢½Í²ö½×¤H«D¡C
ªð¦^¦Cªí ¤W¤@¥DÃD