[ �‰‚߂Ă̕û‚Ö | ˆê——(�Å�V�X�V�‡) | ‘S•¶ŒŸ�õ | ‰ß‹Žƒ�ƒO ]
�@
�w“ü‰×“ú‚Ü‚½‚ÍŽg—pŠúŒÀ‚̌¢‚à‚Ì‚ð’Š�o�x�i�Ⴞ‚é‚Ü�j
Excel2007‚Å‚·�B
‚ ‚é�H•i�w“üŽÒŒü‚¯ƒ_ƒCƒŒƒNƒgƒ��[ƒ‹‚âƒpƒ“ƒtƒŒƒbƒg‚Ȃǂ̃Zƒbƒg�ì‹Æ‚ð‚·‚é‚½‚߂̎wަ�‘‚ð�ì�¬‚·‚鋯–±‚ª‚ ‚è‚Ü‚·�B
‚Ü‚¸‰º‹L‚̂悤‚È“ü‰×ƒ}ƒXƒ^�[‚ª‚ ‚è‚Ü‚·�B
�@�@�@A�@�@�@B�@�@�@C�@�@�@�@D�@�@�@�@E�@�@�@�@�@F�@�@�@�@�@G�@�@�@�@�@�@�@H�@�@�@�@�@�@�@I�@�@�@ 1 “ü‰×ID�@“ü‰×“ú�@�ÝŒÉID�@�@•i–¼�@“ü‰×—\’è�”�@“ü‰×ŽÀ�”�@Žg—pŠúŒÀ�i”N�j�@Žg—pŠúŒÀ�iŒŽ�j�@Žg—pŠúŒÀ�i“ú�j
“ü‰×ID‚̓†ƒj�[ƒN‚Å‚·‚ª�A�ÝŒÉID‚Í�d•¡‚µ‚Ä‚¢‚é‚à‚Ì‚ª‘½�”‚ ‚è‚Ü‚·�B ‚Ü‚½‚±‚̃}ƒXƒ^�[‚Í“ü‰×ID‚Ì�¸�‡‚ɂȂç‚ñ‚Å‚¢‚Ä�AŽg—pŠúŒÀ‚̓oƒ‰ƒoƒ‰‚Å‚·�B Žg—pŠúŒÀ‚ª–³‚¢‚à‚Ì‚à‚ ‚è�A‚Ì�¤•i‚ɂ͎g—pŠúŒÀ—“‚É�u*�v‚ª“ü‚Á‚Ä‚¢‚Ü‚·�B
‚»‚±‚Ɍڋq‚©‚ç�u�ÝŒÉID�FAAA01‚ð1–‡�AAAA02‚ð1–‡�ABBB01‚ð1–‡‚ð1ƒZƒbƒg‚Æ‚µ‚½ƒ_ƒCƒŒƒNƒgƒ��[ƒ‹‚ð2–œƒZƒbƒg�ì‚Á‚Ä‚‚ê�v‚Æ‚¢‚¤ˆË—Š‚ª—ˆ‚Ü‚·�B
‚»‚ê‚ðŽó‚¯‚Ä‚±‚¿‚炪‰º‹L‚̂悤‚È�ì‹ÆŽwަ�‘‚ð�ì�¬‚µ‚Ä�ì‹Æ�ê‚É“n‚µ‚Ü‚·�B
�u“Š“ü•\�v
�@�@A�@�@�@�@�@B�@�@�@�@C�@�@�@�@�@D�@�` 1 ‹Æ–±No�F�›�› 2 ƒZƒbƒg�”�F20000 : 11 �ì‹Æ�ê�@�@�@‡@�@�@�@�@‡A�@�@�@�@ ‡B �@�`�@ 12 •ª—Þ�@�@�@�«•�@�@ •”•i�@�@�@�@•”•i�@�@�` 13 •i–¼�@�@�@••“›A�@�@‚¨�Εéƒrƒ‰�@ƒJƒ^ƒ�ƒOA�@�` 14 �ÝŒÉID�@�@AAA01�@�@�@AAA02�@�@�@BBB01�@�@�` 15 “ü‰×“ú �@11/11/1�@11/11/20 11/11/10�@�` 16 Žg—pŠúŒÀ�@12/3/20�@12/1/10�@�@ 12/2/20�@�` �F�@�@�F�@�@�@�@�F�@�@�@�@�F�@�@�@�@�@�F
1�s–Ú‚©‚ç14�s–ڂ܂ł͎è“ü—͂ł·�B ‰½‚ª‚µ‚½‚¢‚©‚Æ‚¢‚¤‚Æ�A14�s–Ú‚Ì�u�ÝŒÉID�v‚ð“ü—Í‚µ‚½Žž�A15�s–Ú�E16�s–Ú‚Ì�u“ü‰×“ú�v�uŽg—pŠúŒÀ�v‚ªƒ}ƒXƒ^�[‚©‚玩“®“I‚É�o‚邿‚¤‚É‚µ‚½‚¢‚̂ł·�B Žg—pŠúŒÀ‚ª“ü‚Á‚Ä‚¢‚é‚à‚͎̂g—pŠúŒÀ‚̌¢‚à‚Ì‚ð’Š�o�A“ü‚Á‚Ä‚¢‚È‚¢‚à‚͓̂ü‰×“ú‚̌¢‚à‚Ì‚ð’Š�o�A ‚à‚µƒZƒbƒg�”‚É•K—v‚È�”‚ªF—ñ‚Ì�u“ü‰×ŽÀ�”�v‚Å‘«‚è‚È‚‚È‚Á‚½�ê�‡�A“¯‚¶�ÝŒÉID‚ÅŽŸ‚ÉŽg—pŠúŒÀ‚Ü‚½‚Í“ü‰×“ú‚ªŒÃ‚¢‚à‚Ì‚©‚çŽg‚¤�A‚Æ‚¢‚¤Š´‚¶‚Å‚·�B �i‚»‚Ì�ê�‡‚Í17�s–ÚˆÈ�~‚ÉŽŸ‚Ì�¤•i‚Ì“ü‰×“ú‚ÆŽg—pŠúŒÀ‚ð’ljÁ�j Žg—pŠúŒÀ‚Ì‚ ‚é‚à‚̂ƂȂ¢‚à‚̂Ń}ƒXƒ^�[‚𕪂¯‚Ä‚à‚¢‚¢‚Ƃ̂±‚Ƃł·
“–•ûƒ}ƒNƒ�‚Ì’mޝ‚ª‚Ù‚Æ‚ñ‚Ç‚ ‚è‚Ü‚¹‚ñ�B ‚±‚̂悤‚È‚±‚Æ‚ðŠÖ�”‚ł͂ł«‚Ü‚¹‚ñ‚Å‚µ‚傤‚©�H
ŠÖ�”‚¶‚á–³—�‚»‚¤‚Ȃ̂ł±‚±‚⑼‚̃TƒCƒg‚ðŽQ�l‚ÉVBA‚Ì�l‚¦•û‚¾‚¯‚ð�‘‚¢‚Ă݂܂µ‚½�B Žg—pŠúŒÀ‚Ì‚ ‚é‚à‚̂ƂȂ¢‚à‚̂Ƀ}ƒXƒ^�[‚ð‚킯‚½‚Æ‚µ‚Ä�AŽg—pŠúŒÀ‚Ì‚ ‚é‚à‚Ì‚©‚ç‚Ì’Š�o‚Ì�ê�‡ ƒ}ƒXƒ^�[‚ÌJ—ñ‚É�uŽg—pŠúŒÀ”NŒŽ“ú�v�iG�`I—ñ�j‚ðŒ‹�‡‚µ‚½ƒZƒ‹‚ð�ì�¬
Dim i 'ƒJƒEƒ“ƒ^•Ï�” Dim j 'ƒJƒEƒ“ƒ^•Ï�” Dim s1 'Žg—pŠúŒÀ‚ðŠi”[‚·‚é•Ï�”1 Dim s2 'Žg—pŠúŒÀ‚ðŠi”[‚·‚é•Ï�”2 Dim kigen '�Å�I“I‚É�o—Í‚³‚ê‚éŽg—pŠúŒÀ
For i = A2 To A—ñ‚Ì�ÅŒã‚Ü‚Å
�@For j = A2 To A—ñ‚Ì�ÅŒã‚Ü‚Å
�@�@If �u“Š“ü•\�vB14 = Range("C" & j) Then
�@�@�@�@s1 = ("J" & j)
�@�@End If
Next j
�@�@If �u“Š“ü•\�vB14 = Range("C" & i) Then
�@�@�@�@s2 = ("J" & i)
�@�@�@�@If s1 <= s2
�@�@�@�@�@kigen = s1
�@�@�@�@Else
�@�@�@�@�@kigen = s2
�@�@�@�@End If
�@�@End If
Next i
‹L�q‚ÌŽd•û‚ª•ª‚©‚ç‚È‚‚Ä‚ ‚¿‚±‚¿•ςł·‚ª‚±‚ñ‚È�l‚¦•û‚ł͂â‚Á‚ς肨‚©‚µ‚¢‚Å‚·‚©�H
�¡“ú1“ú‚©‚©‚Á‚Ä‚±‚ꂾ‚¯‚µ‚©�l‚¦‚‚«‚Ü‚¹‚ñ‚Å‚µ‚½�c
�i�Ⴞ‚é‚Ü�j
�ãŽè‚�s‚‚©‚È�H
>Žg—pŠúŒÀ‚Ì‚ ‚é‚à‚̂ƂȂ¢‚à‚̂Ń}ƒXƒ^�[‚𕪂¯‚Ä‚à‚¢‚¢‚Ƃ̂±‚Ƃł· ƒ}ƒXƒ^‚Í•ª‚¸‚ÉŽg—p‚µ‚Ü‚·
>1�s–Ú‚©‚ç14�s–ڂ܂ł͎è“ü—͂ł·�B ‘S‚Ä“ü—Í‚µ‚Ä‚©‚ç�Aƒ}ƒNƒ�‚ðŽÀ�s‚µ‚ĉº‚³‚¢
ˆÈ‰º‚ð•W�€ƒ‚ƒWƒ…�[ƒ‹‚É‹L�q‚µ‚ĉº‚³‚¢
Option Explicit
Public Sub Sample()
Dim i As Long
Dim j As Long
Dim k As Long
Dim lngRows As Long
Dim lngColumns As Long
Dim rngList As Range
Dim rngResult As Range
Dim vntData As Variant
Dim vntSets As Variant
Dim lngCount As Long
Dim vntStockID As Variant
Dim vntResult As Variant
Dim lngMax As Long
Dim strProm As String
'“ü‰×ƒ}ƒXƒ^�[List‚Ì�擪ƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�擪—ñ‚Ì—ñŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
Set rngList = Worksheets("“ü‰×ƒ}ƒXƒ^�[").Range("A1")
'“Š“ü•\‚Ì�ÝŒÉIDƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�sŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
Set rngResult = Worksheets("“Š“ü•\").Range("A14")
'‰æ–Ê�X�V‚ð’âŽ~
Application.ScreenUpdating = False
'“ü‰×ƒ}ƒXƒ^�[‚É�A‚¢‚Ä
With rngList
'�s�”‚̎擾
lngRows = .Offset(Rows.Count - .Row).End(xlUp).Row - .Row
If lngRows <= 0 Then
strProm = .Parent.Name & "‚Ƀf�[ƒ^‚ª—L‚è‚Ü‚¹‚ñ"
GoTo Wayout
End If
'�ÝŒÉID�‡‚ÌŽg—pŠúŒÀ�i”N�AŒŽ�A“ú�j�‡‚Ì“ü‰×“ú�‡‚ÅList‚ð�®—ñ
'A—ñ‚©‚ç�®—ñ‚·‚é—ñ‚Ì—ñOffset‚ðŽw’è,‘S‚Ä�¸�‡‚Å
DataSort .Offset(1).Resize(lngRows, 9), Array(2, 6, 7, 8, 1), _
Array(xlAscending, xlAscending, xlAscending, _
xlAscending, xlAscending)
'‘S—ñƒf�[ƒ^‚ð”z—ñ‚Ɏ擾
vntData = .Offset(1).Resize(lngRows + 1, 9).Value
End With
'“Š“ü•\‚É�A‚¢‚Ä
With rngResult
'—ñ�”‚̎擾
lngColumns = .Offset(, Columns.Count - .Column).End(xlToLeft).Column - .Column
If lngColumns <= 0 Then
strProm = .Parent.Name & "‚Ƀf�[ƒ^‚ª—L‚è‚Ü‚¹‚ñ"
GoTo Wayout
End If
'Set�”‚ðŽæ“¾
vntSets = .Offset(-12, 1).Value
'�ÝŒÉID‚ðŽæ“¾
vntStockID = .Offset(, 1).Resize(, lngColumns).Value
End With
'“Š“ü•\‚Ì�ÝŒÉID‚ð‰¡‚ÉŒ©‚Ä�s‚Á‚Ä
For i = 1 To lngColumns
'�o—Í�sˆÊ’u‚ð�‰Šú‰»
k = 0
'“ü‰×ƒ}ƒXƒ^‚Ì�ÝŒÉID‚ð�ã‚©‚猩‚Ä�s‚Á‚Ä
For j = 1 To lngRows
'�ÝŒÉID‚ª“™‚µ‚¢‚È‚ç
If vntStockID(1, i) = vntData(j, 3) Then
'For‚𔲂¯‚é
Exit For
End If
Next j
'�o—Í�s‚ð�X�V
k = k + 1
'�o—Í—p”z—ñ‚ðŠm•Û
ReDim vntResult(1 To k * 2)
'�ÝŒÉID‚ª“™‚µ‚¢‚È‚ç
If j <= lngRows Then
'•K—v�”‚ð“]‹L
lngCount = vntSets
'“ü‰×“ú‚ð“]‹L
vntResult(k) = vntData(j, 2)
'Žg—pŠúŒÀ�i”N&ŒŽ&“ú�j‚ª“ú•t‚Æ”F‚ß‚ç‚ê‚é‚È‚ç
If IsDate(vntData(j, 7) & "/" & vntData(j, 8) _
& "/" & vntData(j, 9)) Then
'Žg—pŠúŒÀ‚ð“]‹L
vntResult(k + 1) = DateSerial(vntData(j, 7), _
vntData(j, 8), vntData(j, 9))
Else
'Žg—pŠúŒÀ‚É*‚ð‹L“ü
vntResult(k * 2) = "*"
End If
'•K—v�”‚©‚ç�ÝŒÉ�”‚ðƒ}ƒCƒiƒX
lngCount = lngCount - vntData(j, 6)
'�݌ɂª•K—v�”‚ð–ž‚½‚·–˜ŒJ‚è•Ô‚µ
Do Until lngCount < 0
'“ü‰×ƒ}ƒXƒ^‚ðŒ©‚é�s‚ð�X�V
j = j + 1
'�o—Í�s‚ð�X�V
k = k + 1
'�o—Í—p”z—ñ‚ðŠg’£
ReDim Preserve vntResult(1 To k * 2)
'�ÝŒÉID‚ª“™‚µ‚¢‚È‚ç
If vntStockID(1, i) = vntData(j, 3) Then
'“ü‰×“ú‚ð“]‹L
vntResult(k * 2 - 1) = vntData(j, 2)
'Žg—pŠúŒÀ�i”N&ŒŽ&“ú�j‚ª“ú•t‚Æ”F‚ß‚ç‚ê‚é‚È‚ç
If IsDate(vntData(j, 7) & "/" & vntData(j, 8) _
& "/" & vntData(j, 9)) Then
'Žg—pŠúŒÀ‚ð“]‹L
vntResult(k * 2) = DateSerial(vntData(j, 7), _
vntData(j, 8), vntData(j, 9))
Else
'Žg—pŠúŒÀ‚É*‚ð‹L“ü
vntResult(k * 2) = "*"
End If
'•K—v�”‚©‚ç�ÝŒÉ�”‚ðŒ¸ŽZ
lngCount = lngCount - vntData(j, 6)
Else
vntResult(k * 2 - 1) = "�݌ɕs‘«"
Exit Do
End If
Loop
Else
vntResult(k * 2 - 1) = "�݌ɕs‘«"
End If
'Œ‹‰Ê‚ð�o—Í
rngResult.Offset(1, i).Resize(k * 2).Value _
= WorksheetFunction.Transpose(vntResult)
'�o—Í‚Ì�Å‘å�s�”‚ð•Û‘¶
If lngMax < k Then
lngMax = k
End If
Next i
'“ü‰×“ú�AŽg—pŠúŒÀ‚ð�‘‚«�ž‚Þ
ReDim vntResult(1 To 2, 1 To 1)
vntResult(1, 1) = "“ü‰×“ú"
vntResult(2, 1) = "Žg—pŠúŒÀ"
For i = 0 To lngMax - 1
rngResult.Offset(i * 2 + 1).Resize(2).Value = vntResult
Next i
'“ü‰×ƒ}ƒXƒ^�[‚É�A‚¢‚ăf�[ƒ^‚ðŒ³‚É–ß‚·
DataSort rngList.Offset(1).Resize(lngRows, 9), Array(0), Array(xlAscending)
strProm = "�ˆ—�‚ªŠ®—¹‚µ‚Ü‚µ‚½"
Wayout:
'‰æ–Ê�X�V‚ð�ÄŠJ
Application.ScreenUpdating = True
Set rngList = Nothing
Set rngResult = Nothing
MsgBox strProm, vbInformation
End Sub
Private Sub DataSort(rngScope As Range, _
vntKeys As Variant, _
vntOrders As Variant, _
Optional lngOrientation As Long = xlTopToBottom)
' vntKeys‚Å—^‚¦‚ç‚ꂽ’l‚ðKey‚Æ‚µ‚Ä�®—ñ
Dim i As Long
Dim rngTop As Range
Set rngTop = rngScope.Cells(1, 1)
With rngTop.Parent
.Sort.SortFields.Clear
For i = 0 To UBound(vntKeys, 1)
.Sort.SortFields.Add Key:=rngTop.Offset(, vntKeys(i)) _
, SortOn:=xlSortOnValues, Order:=vntOrders(i) _
, DataOption:=xlSortNormal
Next i
With .Sort
.SetRange rngScope
.Header = xlNo
.MatchCase = False
.Orientation = lngOrientation
.SortMethod = xlStroke
.Apply
End With
End With
Set rngTop = Nothing
End Sub
(Bun)
‚²‚ß‚ñ�A•K—v�”‚ÌŒvŽZ‚ªŠÔˆá‚¦‚Ä‚¢‚Ü‚µ‚½ �šˆó‚Ì—l‚É�C�³‚µ‚ĉº‚³‚¢
'�݌ɂª•K—v�”‚ð–ž‚½‚·–˜ŒJ‚è•Ô‚µ
' Do Until lngCount < 0
Do Until lngCount <= 0 '�š�ã‹L‚ð�C�³
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�I ƒRƒ�ƒ“ƒg‚܂Œš”J‚É“ü‚ê‚Ä‚‚¾‚³‚Á‚½‚̂ł悂킩‚è‚Ü‚µ‚½�I
ˆê‚‚¾‚¯‚¨•·‚«‚µ‚½‚¢‚̂ł·‚ª�A�u“Š“ü•\�v‚ª‚¢‚‚‚©‚ ‚Á‚Ä�A�u“Š“ü•\ƒA�v�u“Š“ü•\ƒC�v‚̂悤‚É �u“Š“ü•\�v‚ª“ª‚ɂ‚¢‚½ƒV�[ƒg‚ª‚ ‚è‚Ü‚·�B
‚±‚Ì�ê�‡�A‚»‚Ì“Š“ü•\‚²‚ƂɃ}ƒNƒ�‚ðŽÀ�s‚·‚é‚ɂ͂ǂ¤‚µ‚½‚ç‚æ‚¢‚Å‚µ‚傤‚©�H �i�gƒA�h�gƒC�h‚Ì•”•ª‚Í‚»‚Ì“s“x•Ï‚í‚è‚Ü‚·�j
�i�Ⴞ‚é‚Ü�j
>ˆê‚‚¾‚¯‚¨•·‚«‚µ‚½‚¢‚̂ł·‚ª�A�u“Š“ü•\�v‚ª‚¢‚‚‚©‚ ‚Á‚Ä�A�u“Š“ü•\ƒA�v�u“Š“ü•\ƒC�v‚̂悤‚É >�u“Š“ü•\�v‚ª“ª‚ɂ‚¢‚½ƒV�[ƒg‚ª‚ ‚è‚Ü‚·�B > > >‚±‚Ì�ê�‡�A‚»‚Ì“Š“ü•\‚²‚ƂɃ}ƒNƒ�‚ðŽÀ�s‚·‚é‚ɂ͂ǂ¤‚µ‚½‚ç‚æ‚¢‚Å‚µ‚傤‚©�H >�i�gƒA�h�gƒC�h‚Ì•”•ª‚Í‚»‚Ì“s“x•Ï‚í‚è‚Ü‚·�j >
ˆê”Ô’P�ƒ‚È•û–@‚Ì1‚‚Í�A
'“Š“ü•\‚Ì�ÝŒÉIDƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�sŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
Set rngResult = Worksheets("“Š“ü•\").Range("A14")
‚ð
'“Š“ü•\‚Ì�ÝŒÉIDƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�sŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
Set rngResult = ActiveSheet.Range("A14")
‚Æ•Ï�X‚µ‚Ü‚· ‚»‚µ‚ă}ƒNƒ�‚ðŽÀ�s‚·‚é�ê�‡�A�u“Š“ü•\ƒA�v�¬‚è�A�u“Š“ü•\ƒC�v�¬‚è‚ðActive�i‚±‚̃V�[ƒg‚ªŒ©‚¦‚Ä‚¢‚é�ó‘Ô�j ‚É‚µ‚Ä�A�uSub Sample�v‚ðŽÀ�s‚µ‚Ü‚· ‚»‚¤‚·‚ê‚Î�AŒ‹‰ÊActive‚É‚µ‚½ƒV�[ƒg‚É”½‰f‚³‚ê‚Ü‚·
•ʈĂƂµ‚Ä‚Í
'“Š“ü•\‚Ì�ÝŒÉIDƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�sŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
Set rngResult = Worksheets("“Š“ü•\").Range("A14")
‚ð�uSub Sample�v‚̈ø�”‚Æ‚µ‚ÄŠO‚É�o‚µ‚Ü‚· ‹l‚Ü‚è�A
Public Sub Sample(wksResult As Worksheet)
‚Æ‚µ‚Ü‚· ŽŸ‚É
'“Š“ü•\‚Ì�ÝŒÉIDƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�sŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
Set rngResult = wksResult.Range("A14")
‚Æ‚µ‚Ü‚·�A‚»‚µ‚Ä�Ÿ‚ê‚ðŒÄ‚Ñ�o‚·ƒvƒ�ƒV�[ƒWƒƒ‚ð�ì‚è‚Ü‚· —Ⴆ‚Î�u“Š“ü•\ƒA�v‚ÉŒ‹‰Ê‚ð‹�‚ß‚é‚È‚ç
Public Sub “Š“ü•\ƒA()
Sample Worksheets("“Š“ü•\ƒA")
End Sub
‚ÆŒ¾‚¤ƒvƒ�ƒV�[ƒWƒƒ‚𓊓ü•\•ª�ì‚è�AŒ‹‰Ê‚ð‹�‚ß‚½‚¢“Š“ü•\‚̃vƒ�ƒV�[ƒWƒƒ‚ðŽÀ�s‚µ‚Ü‚·
ˆÈ�ã
PS�F�¡‰ñŽd—l‚Æ‚µ‚Ä–³‚©‚Á‚½‚̂ł·‚ª�AˆÈ‰º‚Ì—l‚É‚·‚ê‚Î�݌ɕs‘«‚ª�o‚é�ê�‡‘´‚Ì–‡�”‚ð�o‚·Ž–‚à�o—ˆ‚Ü‚·
(Bun)
ˆÈ‰º‚ð�‘‚«–Y‚ê‚Ü‚µ‚½
'•K—v�”‚©‚ç�ÝŒÉ�”‚ðŒ¸ŽZ
lngCount = lngCount - vntData(j, 6)
Else
' vntResult(k * 2 - 1) = "�݌ɕs‘«"
vntResult(k * 2 - 1) = lngCount & "–‡•s‘«" '�š•Ï�X
Exit Do
End If
Loop
Else
' vntResult(k * 2 - 1) = "�݌ɕs‘«"
vntResult(k * 2 - 1) = vntSets & "–‡•s‘«" '�š•Ï�X
End If
'Œ‹‰Ê‚ð�o—Í
rngResult.Offset(1, i).Resize(k * 2).Value _
= WorksheetFunction.Transpose(vntResult)
'�š•s‘«‚Ì�ê�‡‚Ì�ˆ—�
If Not IsDate(vntResult(k * 2 - 1)) Then
rngResult.Offset(k * 2 - 1, i).Font.Color = vbRed
End If
'�o—Í‚Ì�Å‘å�s�”‚ð•Û‘¶
If lngMax < k Then
lngMax = k
End If
Next i
(Bun)
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�I ’ljÁ‚Ì�ˆ—�‚à�•‚©‚è‚Ü‚µ‚½�B
‚·‚݂܂¹‚ñ�A‚à‚¤ˆê‚Â�ðŒ�•ªŠò‚Ì•û–@‚ð‚¨‹³‚¦‚‚¾‚³‚¢�B
�¤•i‚ðƒZƒbƒg‚·‚é�Û‚É�u"‘qŒÉA“Œ"‚Ì"’IB-1"‚©‚ç�o‚·�v‚Æ‚¢‚¤Žwަ‚ª‚ ‚è‚Ü‚·�B ƒ}ƒXƒ^�[‚Ì’†‚Å‚Í
�@M�@�@N�@�@O�@�@P ‘qŒÉ�@“��@�@’I�@”Ô�† �@A�@ “Œ�@�@B�@�@1
‚±‚̂悤‚É4—ñ‚É•ª‚©‚ê‚Ä‚¢‚é‚Ì‚Å�A‰E’[‚ÌAL—ñ‚É�uM—ñ�•N—ñ�•O—ñ�•P—ñ�v‚ÌŒ‹�‡‚µ‚½�ì‹Æ—ñ‚ð�ì‚è�A“Š“ü•\‚ÌB7ƒZƒ‹‚É
AL—ñ‚Ì�ðŒ��i‚Ç‚±‚©‚ç�o‚·‚©�j‚ð‹L“ü‚µ‚悤‚ÆŽv‚¢‚Ü‚·
�iŽè“ü—͂ł̓~ƒX‚ª�o‚邯Žv‚¤‚Ì‚ÅƒŠƒXƒgƒ{ƒbƒNƒX‚©‰½‚©‚ð’u‚¢‚Ä�c�j
ˆê‚Â‚Ì“Š“ü•\‚Å‚ÍAL—ñ‚Ì�ðŒ�‚Í‘S•”“¯‚¶‚Å‚·�B
‚Ȃ̂ŠIF B7 = "“ü‰×ƒ}ƒXƒ^�["AL—ñ
‚Æ‚¢‚¤‚悤‚È�ðŒ�‚ð“ü‚ꂽ‚¢‚̂ł·‚ª�A‚ǂ̂悤‚È‹L�q‚ð‚·‚ê‚΂悢‚Å‚µ‚傤‚©�c
Œã‚©‚ç‚·‚݂܂¹‚ñ�c�ã‚©‚炳‚«‚Ù‚Ç‚±‚Ì�ðŒ�‚ð“ü‚ê‚ë‚ÆŒ¾‚í‚ê‚Ü‚µ‚Ä�c
‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·<(__)>
�i�Ⴞ‚é‚Ü�j
‚¤�[‚ñ�H�H�H Œ¾‚Á‚Ä‚¢‚éˆÓ–¡‚ª�¡ˆê‚—�‰ð�o—ˆ‚È‚¢‚̂ł·‚ª�H
‚±‚¿‚ç‚̎󂯎æ‚è•û‚Í�A 1�A�u“Š“ü•\�v‚ÌB7ƒZƒ‹‚ɗႦ‚Î�uA“ŒB1�v‚Æ“ü‚ê‚Ü‚· �@‚±‚̈Ӗ¡‚Í�A�u"‘qŒÉA“Œ"‚Ì"’IB-1"‚©‚ç�o‚·�v‚ÆŒ¾‚¤�oŒÉ�ê�ŠŽwަ‚Å‚· 2�A‚±‚Ì’l‚Í�A“ü‰×ƒ}ƒXƒ^�[‚ÌM—ñ�AN—ñ�AO—ñ�AP—ñ‚É•ªŠ„‚µ‚Ä“o˜^‚µ‚Ä—L‚è‚Ü‚· 3�A�u“Š“ü•\�v�ì�¬Žž�i“ü‰×ƒ}ƒXƒ^�[‚©‚ç�ÝŒÉID‚ð’T‚·Žž�j‚É�A �@�u“Š“ü•\�vB7ƒZƒ‹‚Ì’l‚ÆŠY“–�u�ÝŒÉID�v�s‚ÌM—ñ�AN—ñ�AO—ñ�AP—ñ‚Ì’l‚ªˆê’v‚µ‚½•¨‚¾‚¯‚ð �@�u“Š“ü•\�v‚Ì15�s–ÚˆÈ�~‚É‹L“ü‚·‚é
‚ÆŒ¾‚¤Ž–‚Å‚µ‚傤‚©�H
‹^–â
‚à‚µ�A�݌ɂ͗L‚邪B7ƒZƒ‹‚Ì’l‚ƈê’v‚µ‚È‚¢�ê�‡‚͂ǂ¤‚·‚é‚Ì�H
–{“–‚Í“ü‰×ƒ}ƒXƒ^�[‚Ì�Å�I—ñ‚͉½�ˆ‚Ü‚Å�Ý‚é‚Ì�H
�iƒR�[ƒh�ã‚Å�®—ñ‚·‚é‚̂Ŗ{“–‚Ì�Å�I—ñ‚ª‰ð‚ç‚È‚¢‚Æ�AList‚Ì‘O”¼‚¾‚¯�®—ñ‚³‚ê‚Ă߂¿‚á‚‚¿‚á‚É�¬‚鎖‚à
–³‚¢‚Ƃ͌¾‚¦‚È‚¢‚©‚à�H�j
�®�A�h‰E’[‚ÌAL—ñ‚É�uM—ñ�•N—ñ�•O—ñ�•P—ñ�v‚ÌŒ‹�‡‚µ‚½�ì‹Æ—ñ‚ð�ì‚è�h‚Æ—L‚è‚Ü‚·‚ª ƒR�[ƒh�ã‚Å•¶Žš—ñ‚̘AŒ‹‚Í�o—ˆ‚Ü‚·‚Ì‚Å�A�ì‹Æ—ñ‚ð�ì‚é•K—v‚Í–³‚¢‚ÆŽv‚¢‚Ü‚· ‰ºŽè‚É�ì‹Æ—ñ‚ð�ì‚è‚»‚±‚Ö�”Ž®“™‚ð“ü‚ê‚ç‚ê‚邯�”Ž®‚ª�F�X‚Ǝז‚‚ð‚·‚é‰Â”\�«‚à—L‚è‚Ü‚·
(Bun)
�à–¾‚ª‰ºŽè‚Å‚·‚݂܂¹‚ñ�c
“ü‰×ƒ}ƒXƒ^�[‚ÍAK—ñ‚܂ł ‚è‚Ü‚·�B
> �u“Š“ü•\�v�ì�¬Žž�i“ü‰×ƒ}ƒXƒ^�[‚©‚ç�ÝŒÉID‚ð’T‚·Žž�j‚É�A > �u“Š“ü•\�vB7ƒZƒ‹‚Ì’l‚ÆŠY“–�u�ÝŒÉID�v�s‚ÌM—ñ�AN—ñ�AO—ñ�AP—ñ‚Ì’l‚ªˆê’v‚µ‚½•¨‚¾‚¯‚ð > �u“Š“ü•\�v‚Ì15�s–ÚˆÈ�~‚É‹L“ü‚·‚é
‚Í‚¢�A‚»‚¤‚Å‚·�B
>�@‚à‚µ�A�݌ɂ͗L‚邪B7ƒZƒ‹‚Ì’l‚ƈê’v‚µ‚È‚¢�ê�‡‚͂ǂ¤‚·‚é‚Ì�H
‘¼‚Ì‘qŒÉ“™‚É�݌ɂª‚ ‚Á‚Ä‚à�AŽwަ‚µ‚½‘qŒÉ‚É�݌ɂª‚È‚¯‚ê‚Î�u�݌ɕs‘«�v‚ɂȂè‚Ü‚·�B ŒÚ‹q‚©‚ç�u‚±‚±‚Ì‘qŒÉ‚Ì‚±‚Ì’I‚Ì•ª‚ðŽg‚Á‚Ä‚‚ê�v‚Æ‚¢‚¤Žw’肪‚ ‚è‚Ü‚·‚Ì‚Å�c ‚±‚Ì4‚‚̑g‚Ý�‡‚킹‚ª‚¢‚‚Â‚à‚ ‚è�A�¡Œã‚à‘�‚¦‚é—\’肪‚ ‚é‚Ì‚ÅID‚̂悤‚È‚à‚Ì‚ª�ì‚ê‚È‚‚Ä�c
�ì‹Æ—ñ‚ÌŒ�‚Í—¹‰ð‚¢‚½‚µ‚Ü‚µ‚½�B
‚ ‚Æ‚·‚݂܂¹‚ñ�A‘qŒÉ“™‚Ì�ê�Š�uM�`P—ñ�v‚Æ�‘‚¢‚Ă܂µ‚½‚ª�Å�V‚̃}ƒXƒ^�[‚Å J—ñ�EK—ñ�EL—ñ�EM—ñ‚ɕςí‚Á‚Ă܂µ‚½�B
‚»‚ê‚Æ“ü‰×“ú‚ðAI—ñ‚É‚ ‚é�u“ü‰×Žó•t”Ô�†�v‚Æ‚¢‚¤‚Æ‚±‚ë‚É•Ï�X‚·‚邿‚¤‚ÉŒ¾‚í‚ê‚Ü‚µ‚½�B ‚±‚Ì�u“ü‰×Žó•t”Ô�†�v‚Í�ã‚É�‘‚¢‚½�u“ü‰×“ú�v‚ðŒ³‚É�ì�¬‚³‚ê‚Ä‚¢‚é”Ô�†‚Å�AŽæ‚舵‚¢‚Í“ü‰×“ú‚ƕςí‚ç‚È‚¢‚̂ł·‚ª�A AI—ñ‚ɂ͑¼‚Ì—ñ‚R‚‚ðŒ‹�‡‚·‚é�”Ž®‚ª“ü‚Á‚Ä‚¢‚Ü‚·�B
‹ï‘Ì“I‚É‚Í�A
�@�@�@AA�@�@�@�@AB�@�@�@AC�@�@�@�`�@�@�@�@AI 1 “ü‰×“ú”Ô�†�@Ž}”Ô1�@�@Ž}”Ô2�@�@�`�@“ü‰×Žó•t”Ô�† 2 111208 0000�@�@�@00�@�@�@�`�@�@111208000000 3�@111208�@�@ 0001�@�@�@00�@�@�@�`�@�@111208000100 4�@111208�@�@ 0001�@�@�@01�@�@�@�`�@�@111208000101
‚Æ‚È‚é‚æ‚¤‚É�AAI—ñ‚É =$AA2&$AB2&$AC2 ‚Æ‚¢‚¤�”Ž®‚ª“ü‚Á‚Ä‚¢‚Ü‚· (AI—ñ‚͕ʂ̃V�[ƒg‚ŕʂ̒ •[‚ð�ì‚é‚̂Ɏg—p‚µ‚Ü‚·�B)
‚±‚Ì�”Ž®‚ªŽ×–‚‚ɂȂ邱‚Ƃ͂ ‚è‚Ü‚·‚©�H
‰½‚©–{“–‚É‚à‚¤‚·‚݂܂¹‚ñ�„�ƒ
�i�Ⴞ‚é‚Ü�j
>‚±‚Ì�”Ž®‚ªŽ×–‚‚ɂȂ邱‚Ƃ͂ ‚è‚Ü‚·‚©�H
‘¼‚àŠÜ‚ߌŸ“¢‚µ‚ÄŒ©‚Ü‚· �‚µŽžŠÔ‚ð‰º‚³‚¢
(Bun)
>‚±‚Ì�”Ž®‚ªŽ×–‚‚ɂȂ邱‚Ƃ͂ ‚è‚Ü‚·‚©�H ˆê‰ž�A–â‘è‚Í�o‚È‚¢—l‚Å‚·
�¡‰ñ�A�oŒÉ�ê�Š‚ÌŒ�‚àŠÜ‚ß’¼�Ú�u“ü‰×ƒ}ƒXƒ^�[�v‚É�®—ñ‚ðŠ|‚¯‘´�ˆ‚©‚瓊“üŽwަ‚ðŒvŽZ‚·‚é•û–@•Ï�X‚µ‚Ü‚· �oŒÉ�ê�Š‚ÌŒ��Aƒ}ƒXƒ^‚̕یì�Aƒf�[ƒ^‚̃Rƒ“ƒpƒNƒg‰»‚Ìˆ× �ì‹Æ—p‚̃V�[ƒg‚ð—\‚ß�ì�¬‚µ�A‘´�ˆ‚É•K—v‚Æ�¬‚éƒf�[ƒ^‚ðƒtƒBƒ‹ƒ^ƒIƒvƒVƒ‡ƒ“�iAdvancedFilter�j‚ðŽg‚Á‚Ä ’Š�o‚µ�Ÿ‚ê‚ð�®—ñ‚µ‚ÄŽg—p‚µ‚Ü‚·
�悸�A“Š“ü•\‚ÌB7‚É�oŒÉ�ê�Š‚ð“ü‚ê‚Ü‚·�A‚±‚Ì�‘Ž®‚͈ꉞ�A�u‘qŒÉ�vˆê•¶Žš�A�u“��vˆê•¶Žš�A �u’I�vˆê•¶Žš�A”Ô�†Šô‚Â‚Å‚à‚Æ�l‚¦�uA“ŒB1�v‚Æ‚µ‚ăR�[ƒh‚ð�‘‚«‚Ü‚·
ŽŸ‚É�Aƒ}ƒNƒ�‚Ì—L‚éBook‚ɃV�[ƒg‚ð’ljÁ‚µ‚ăV�[ƒg–¼‚ð�u�ì‹Æ—p�v‚Æ‚µ‚Ü‚· ‚»‚̃V�[ƒg‚Ì1�s–ڂɈȉº‚ÌŒ©�o‚µ‚ð�ì‚è‚Ü‚· �iAdvancedFilter‚ÍŒ©�o‚µ‚É�_ŒoŽ¿‚Ì—l‚Ȃ̂œü‰×ƒ}ƒXƒ^�[‚©‚ç•K‚¸ƒRƒs�[‚µ‚Ä�ì‚Á‚ĉº‚³‚¢�j
�u�ì‹Æ—p�vƒV�[ƒg‚Ì’Š�o”͈͂Ƃµ‚Ä
‚`�@�@�@‚a�@�@�@�@�@�@‚b�@�@�@‚c�@�@�@�@‚d�@�@�@�@�@�@�@‚e�@�@�@�@�@�@�@‚f “ü‰×ID�@“ü‰×Žó•t”Ô�†�@�ÝŒÉID�@“ü‰×ŽÀ�”�@Žg—pŠúŒÀ�i”N�j�@Žg—pŠúŒÀ�iŒŽ�j�@Žg—pŠúŒÀ�i“ú�j
‚g�@�@‚h�@‚i�@‚j ‘qŒÉ�@“��@’I�@”Ô�†
�u�ì‹Æ—p�v‚Ì�ðŒ�”͈͂Ƃµ‚Ä
‚m�@�@�@‚n�@�@‚o�@‚p�@‚q �ÝŒÉID�@‘qŒÉ�@“��@’I�@”Ô�†
‚Æ‚µ‚ĉº‚³‚¢�A�Ÿ�ˆ‚É�ðŒ�‚ð“ü‚ê‚Ä’Š�o‚µ‚Ü‚· �u�ì‹Æ—p�vƒV�[ƒg‚͌܌Žå¢‚¯‚ê‚Δñ•\ަ‚É‚µ‚ĉº‚³‚¢�iƒeƒXƒg’†‚Í•\ަ‚µ‚Ä’u‚¢‚½•û‚ª‘P‚¢‚©‚à�j
ƒR�[ƒh‚Í
Option Explicit
Public Sub Sample_2()
Dim i As Long
Dim j As Long
Dim k As Long
Dim lngRows As Long
Dim lngColumns As Long
Dim rngList As Range
Dim rngResult As Range
Dim rngWork As Range
Dim vntData As Variant
Dim vntSets As Variant
Dim vntPlace As Variant
Dim lngCount As Long
Dim vntStockID As Variant
Dim vntResult As Variant
Dim lngMax As Long
Dim strProm As String
'“ü‰×ƒ}ƒXƒ^�[List‚Ì�擪ƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�擪—ñ‚Ì—ñŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
Set rngList = Worksheets("“ü‰×ƒ}ƒXƒ^�[").Range("A1")
'“Š“ü•\‚Ì�ÝŒÉIDƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�sŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
Set rngResult = Worksheets("“Š“ü•\").Range("A14")
'�ì‹Æ—pƒV�[ƒg‚Ì’Š�o”͈͂Ì�擪ƒZƒ‹ˆÊ’u(ƒ}ƒXƒ^‚©‚ç•K—vƒf�[ƒ^‚ð’Š�o)
Set rngWork = Worksheets("�ì‹Æ—p").Range("A1")
'‰æ–Ê�X�V‚ð’âŽ~
Application.ScreenUpdating = False
'“Š“ü•\‚É�A‚¢‚Ä
With rngResult
'—ñ�”‚̎擾
lngColumns = .Offset(, Columns.Count - .Column).End(xlToLeft).Column - .Column
If lngColumns <= 0 Then
strProm = .Parent.Name & "‚Ƀf�[ƒ^‚ª—L‚è‚Ü‚¹‚ñ"
GoTo Wayout
End If
'Set�”‚ðŽæ“¾
vntSets = .Parent.Range("B2").Value
'�oŒÉ�ê�Š‚ðŽæ“¾
vntPlace = .Parent.Range("B7").Value
'�ÝŒÉID‚ðŽæ“¾
vntStockID = .Offset(, 1).Resize(, lngColumns).Value
'�s�”‚̎擾
lngRows = .Offset(Rows.Count - .Row).End(xlUp).Row - .Row
If lngRows > 0 Then
.Offset(1).Resize(lngRows).EntireRow.Delete
End If
End With
'“ü‰×ƒ}ƒXƒ^�[‚©‚ç•K—vƒf�[ƒ^‚ðŽæ“¾
If Not GetData(vntData, rngList, rngWork, vntStockID, vntPlace) Then
strProm = "ƒf�[ƒ^‚̎擾‚ª�o—ˆ‚Ü‚¹‚ñ�A�ÝŒÉID�A�oŒÉ�ê�Š“™‚ðŠm”F‚µ‚ĉº‚³‚¢"
GoTo Wayout
End If
'ƒf�[ƒ^�s�”‚ðŽæ“¾
lngRows = UBound(vntData, 1)
'“Š“ü•\‚Ì�ÝŒÉID‚ð‰¡‚ÉŒ©‚Ä�s‚Á‚Ä
For i = 1 To lngColumns
'�o—Í�sˆÊ’u‚ð�‰Šú‰»
k = 0
'“ü‰×ƒ}ƒXƒ^‚Ì�ÝŒÉID‚ð�ã‚©‚猩‚Ä�s‚Á‚Ä
For j = 1 To lngRows
'�ÝŒÉID‚ª“™‚µ‚¢‚È‚ç
If vntStockID(1, i) = vntData(j, 2) Then
'For‚𔲂¯‚é
Exit For
End If
Next j
'�o—Í�s‚ð�X�V
k = k + 1
'�o—Í—p”z—ñ‚ðŠm•Û
ReDim vntResult(1 To k * 2)
'�ÝŒÉID‚ª“™‚µ‚¢‚È‚ç
If j <= lngRows Then
'•K—v�”‚ð“]‹L
lngCount = vntSets
'“ü‰×Žó•t”Ô�†‚ð“]‹L
vntResult(k) = "'" & vntData(j, 1)
'Žg—pŠúŒÀ‚ð“]‹L
vntResult(k * 2) = GetDate(vntData(j, 4), vntData(j, 5), vntData(j, 6))
'•K—v�”‚©‚ç�ÝŒÉ�”‚ðƒ}ƒCƒiƒX
lngCount = lngCount - vntData(j, 3)
'�݌ɂª•K—v�”‚ð–ž‚½‚·–˜ŒJ‚è•Ô‚µ
Do Until lngCount <= 0
'“ü‰×ƒ}ƒXƒ^‚ðŒ©‚é�s‚ð�X�V
j = j + 1
'�o—Í�s‚ð�X�V
k = k + 1
'�o—Í—p”z—ñ‚ðŠg’£
ReDim Preserve vntResult(1 To k * 2)
'�ÝŒÉID‚ª“™‚µ‚¢‚È‚ç
If vntStockID(1, i) = vntData(j, 2) Then
'“ü‰×Žó•t”Ô�†‚ð“]‹L
vntResult(k * 2 - 1) = "'" & vntData(j, 1)
'Žg—pŠúŒÀ‚ð“]‹L
vntResult(k * 2) = GetDate(vntData(j, 4), vntData(j, 5), vntData(j, 6))
'•K—v�”‚©‚ç�ÝŒÉ�”‚ðŒ¸ŽZ
lngCount = lngCount - vntData(j, 3)
Else
vntResult(k * 2 - 1) = lngCount & "–‡•s‘«"
Exit Do
End If
Loop
Else
vntResult(k * 2 - 1) = vntSets & "–‡•s‘«"
End If
'Œ‹‰Ê‚ð�o—Í
rngResult.Offset(1, i).Resize(k * 2).Value _
= WorksheetFunction.Transpose(vntResult)
'•s‘«‚Ì�ê�‡‚Ì�ˆ—�
If InStr(1, vntResult(k * 2 - 1), "–‡•s‘«") Then
rngResult.Offset(k * 2 - 1, i).Font.Color = vbRed
End If
'�o—Í‚Ì�Å‘å�s�”‚ð•Û‘¶
If lngMax < k Then
lngMax = k
End If
Next i
'“ü‰×“ú�AŽg—pŠúŒÀ‚ð�‘‚«�ž‚Þ
ReDim vntResult(1 To 2, 1 To 1)
vntResult(1, 1) = "“ü‰×“ú"
vntResult(2, 1) = "Žg—pŠúŒÀ"
For i = 0 To lngMax - 1
rngResult.Offset(i * 2 + 1).Resize(2).Value = vntResult
Next i
strProm = "�ˆ—�‚ªŠ®—¹‚µ‚Ü‚µ‚½"
Wayout:
'‰æ–Ê�X�V‚ð�ÄŠJ
Application.ScreenUpdating = True
Set rngList = Nothing
Set rngResult = Nothing
Set rngWork = Nothing
MsgBox strProm, vbInformation
End Sub
Private Function GetData(vntData As Variant, rngList As Range, _
rngWork As Range, vntStockID As Variant, _
vntPlace As Variant) As Boolean
' “ü‰×ƒ}ƒXƒ^�[‚©‚çAdvancedFilter‚ðŽg‚Á‚ăf�[ƒ^‚ðŽæ“¾
Dim i As Long
Dim j As Long
Dim vntCrit As Variant
Dim rngCrit As Range
Dim lngRows As Long
'�ì‹Æ—pƒV�[ƒg‚Ì�ðŒ�”͈͂Ì�擪ƒZƒ‹ˆÊ’u(ƒ}ƒXƒ^‚©‚ç•K—vƒf�[ƒ^‚ð’Š�o)
Set rngCrit = rngWork.Parent.Range("N1")
'�ÝŒÉID‚ð’Š�o�ðŒ�‚É�o—Í
ReDim vntCrit(1 To UBound(vntStockID, 2), 1 To 5)
For i = 1 To UBound(vntStockID, 2)
vntCrit(i, 1) = "=" & """=" & vntStockID(1, i) & """"
vntCrit(i, 2) = "=" & """=" & Left(vntPlace, 1) & """"
vntCrit(i, 3) = "=" & """=" & Mid(vntPlace, 2, 1) & """"
vntCrit(i, 4) = "=" & """=" & Mid(vntPlace, 3, 1) & """"
vntCrit(i, 5) = "=" & """=" & Mid(vntPlace, 4) & """"
Next i
rngCrit.Offset(1).Resize(UBound(vntStockID, 2), 5).Value = vntCrit
'“ü‰×ƒ}ƒXƒ^�[‚©‚ç•K—vƒf�[ƒ^‚ð’Š�o
DoFilter rngList.CurrentRegion, _
rngCrit.Resize(UBound(vntStockID, 2) + 1, 5), _
rngWork.Resize(, 11)
'�ì‹Æ—pƒV�[ƒg‚É�A‚¢‚Ä
With rngWork
'�s�”‚̎擾
lngRows = .Offset(Rows.Count - .Row).End(xlUp).Row - .Row
If lngRows <= 0 Then
GoTo Wayout
End If
'�ÝŒÉID�‡‚ÌŽg—pŠúŒÀ�i”N�AŒŽ�A“ú�j�‡‚Ì“ü‰×“ú�‡‚ÅList‚ð�®—ñ
'A—ñ‚©‚ç�®—ñ‚·‚é—ñ‚Ì—ñOffset‚ðŽw’è,‘S‚Ä�¸�‡‚Å
DataSort .Offset(1).Resize(lngRows, 9), Array(2, 4, 5, 6, 1), _
Array(xlAscending, xlAscending, xlAscending, _
xlAscending, xlAscending)
'‘S—ñƒf�[ƒ^‚ð”z—ñ‚Ɏ擾
vntData = .Offset(1, 1).Resize(lngRows + 1, 6).Value
End With
GetData = True
Wayout:
Set rngCrit = Nothing
End Function
Private Function GetDate(vntYear As Variant, vntMonth As Variant, _
vntDay As Variant) As Variant
'Žg—pŠúŒÀ�i”N&ŒŽ&“ú�j‚ª“ú•t‚Æ”F‚ß‚ç‚ê‚é‚È‚ç
If IsDate(vntYear & "/" & vntMonth & "/" & vntDay) Then
'ƒVƒŠƒAƒ‹’l‚ɕϊ·
GetDate = DateSerial(vntYear, vntMonth, vntDay)
Else
'*‚ð•Ô‚·
GetDate = "*"
End If
End Function
Private Sub DoFilter(rngScope As Range, _
rngCriteria As Range, _
rngCopyTo As Range, _
Optional blnUnique As Boolean)
' AdvancedFilter‚ðŽÀ�s
rngScope.AdvancedFilter _
Action:=xlFilterCopy, _
CriteriaRange:=rngCriteria, _
CopyToRange:=rngCopyTo, _
Unique:=blnUnique
End Sub
Private Sub DataSort(rngScope As Range, _
vntKeys As Variant, _
vntOrders As Variant, _
Optional lngOrientation As Long = xlTopToBottom)
Dim i As Long
Dim rngTop As Range
Set rngTop = rngScope.Cells(1, 1)
With rngTop.Parent
.Sort.SortFields.Clear
For i = 0 To UBound(vntKeys, 1)
.Sort.SortFields.Add Key:=rngTop.Offset(, vntKeys(i)) _
, SortOn:=xlSortOnValues, Order:=vntOrders(i) _
, DataOption:=xlSortNormal
Next i
With .Sort
.SetRange rngScope
.Header = xlNo
.MatchCase = False
.Orientation = lngOrientation
.SortMethod = xlStroke
.Apply
End With
End With
Set rngTop = Nothing
End Sub
(Bun)
‚¨Žè�”‚ð‚¨‚©‚¯‚µ‚Ü‚·�B ‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
ƒTƒ“ƒvƒ‹‚ð�ì‚Á‚ÄŽŽ‚µ‚½‚Æ‚±‚ë�A“ü‰×Žó•t”Ô�†‚È‚Ç‚Í“Š“ü•\‚É”½‰f‚³‚ꂽ‚̂ł·‚ª�A“ü‰×Žó•t”Ô�†‚Ȃǂª“ü‚é�sˆÈ‰º �i“Š“ü•\‚Ì15�s–ڈȉº�j‚Ì�‘Ž®�iŒr�ü�A“h‚è‚‚Ԃµ‚È‚Ç�j‚âˆó�ü”͈͂Ì�Ý’è‚Ȃǂª‘S‚ăNƒŠƒA‚³‚ê‚Ä‚µ‚Ü‚¢‚Ü‚·�c
‚ ‚Æ‘qŒÉ‚Ȃǂ̕”•ª‚Í�AŽÀ�Û‚Í�uƒ�ƒWƒXƒeƒBƒbƒN�v�u‚¨‹q—l‘‹Œû—p�v‚Ȃǂ̕¶Žš—ñ‚ª“ü‚è‚Ü‚·‚ª�A‚±‚ê‚͕ʂɃ}ƒXƒ^�[‚ð�ì‚Á‚Ä ‘qŒÉID‚̂悤‚È‚à‚Ì‚ð�ì�¬‚µ�A‚»‚±‚©‚çˆø‚Á’£‚Á‚Ä‚«‚½•û‚ª‚æ‚¢‚Å‚µ‚傤‚©�B ��Žž�V‚µ‚¢‚à‚Ì‚à’ljÁ‚³‚ê‚é‚̂łǂ±‚©‚ðŽQ�Æ‚µ�A“Š“ü•\‚ÌB7ƒZƒ‹‚É“ü—Í‚µ‚½•û‚ª“ü—̓~ƒX‚Å�݌ɂª”½‰f‚³‚ê‚È‚¢�A ‚Ȃǂ̌»�Û‚ª‰ñ”ð‚Å‚«‚é‚©‚ÆŽv‚¢‚Ü‚µ‚Ä�c �i‚±‚±‚ÍŽ„‚à‚Ç‚¤‚·‚ê‚Γü—̓~ƒX‚È‚‹L“ü‚Å‚«‚é‚©�l‚¦‚Ä‚¢‚邯‚±‚ë‚Å‚·�BŒ»�݂̃}ƒXƒ^�[‚ª‘S‚ÄŽè“ü—͂Š‘SŠp”¼Šp‚Ȃǂ̔÷–‚ȈႢ‚ª‘½‚¢‚Ì‚Å�c�j
‚±‚Ì•”•ª‚ÍŽ©•ª‚Å‚à‚à‚¤�‚µ•û–@‚ð�l‚¦‚Ă݂܂·
‚Æ‚è‚ ‚¦‚¸‚à‚¤�‚µ“Š“ü•\‚̃ŒƒCƒAƒEƒg‚È‚Ç�l‚¦‚È‚ª‚玎‚µ‚Ă݂܂·�B
�i�Ⴞ‚é‚Ü�j
>ƒTƒ“ƒvƒ‹‚ð�ì‚Á‚ÄŽŽ‚µ‚½‚Æ‚±‚ë�A“ü‰×Žó•t”Ô�†‚È‚Ç‚Í“Š“ü•\‚É”½‰f‚³‚ꂽ‚̂ł·‚ª�A“ü‰×Žó•t”Ô�†‚Ȃǂª“ü‚é�sˆÈ‰º >�i“Š“ü•\‚Ì15�s–ڈȉº�j‚Ì�‘Ž®�iŒr�ü�A“h‚è‚‚Ԃµ‚È‚Ç�j‚âˆó�ü”͈͂Ì�Ý’è‚Ȃǂª‘S‚ăNƒŠƒA‚³‚ê‚Ä‚µ‚Ü‚¢‚Ü‚·�c
ƒSƒ�ƒ“�Ÿ‚ê‚̓R�[ƒh‚Ì’†‚Å•s‘«‚Ì�ê�‡Font�Ô‚É�Ý’è‚·‚鎞‚ª—L‚é‚Ì‚Å“Š“ü•\‚Ì15�s–ڈȉº‚ð�s�í�œ‚µ‚Ä‚¢‚éˆ×‚Å‚· �Ÿ‚ê‚ð‚â‚ß‚é‚͈̂ȉº‚ð�í�œ‚·‚ê‚ÎŽ~‚Ü‚è‚Ü‚·
'“Š“ü•\‚É�A‚¢‚Ä
With rngResult
�E
�E
�E
'�s�”‚̎擾
lngRows = .Offset(Rows.Count - .Row).End(xlUp).Row - .Row '�š�í�œ
If lngRows > 0 Then '�š�í�œ
.Offset(1).Resize(lngRows).EntireRow.Delete '�š�í�œ
End If '�š�í�œ
End With
>‚ ‚Æ‘qŒÉ‚Ȃǂ̕”•ª‚Í�AŽÀ�Û‚Í�uƒ�ƒWƒXƒeƒBƒbƒN�v�u‚¨‹q—l‘‹Œû—p�v‚Ȃǂ̕¶Žš—ñ‚ª“ü‚è‚Ü‚·‚ª�A‚±‚ê‚͕ʂɃ}ƒXƒ^�[‚ð�ì‚Á‚Ä >‘qŒÉID‚̂悤‚È‚à‚Ì‚ð�ì�¬‚µ�A‚»‚±‚©‚çˆø‚Á’£‚Á‚Ä‚«‚½•û‚ª‚æ‚¢‚Å‚µ‚傤‚©�B
“ü‰×ƒ}ƒXƒ^�[‚ɂł·‚©�A�o—ˆ‚ê‚΂»‚Ì•û‚ª‘P‚¢‚Å‚µ‚傤‚ª�H �uA“ŒB1�v‚Æ‚µ‚½‚Ì‚Í�AŽÀ�Û‚É”@‰½‚·‚é‚©‚ªŒˆ‚Ü‚Á‚Ä–³‚©‚Á‚½‚ÌŽæ‚è�‡‚¦‚¸‚±‚Ì—l‚É‚µ‚½–˜‚Å‚·‚ª�H �Ÿ‚ê‚Í�A—Ⴆ‚΃Jƒ“ƒ}‚âƒZƒ~ƒRƒ�ƒ“‚âƒ_ƒuƒ‹ƒRƒ�ƒ““™‚Å‹æ�Ø‚Á‚Ä�Ÿ‚ê‚ð‹æ�Ø‚è•¶Žš‚Æ‚·‚ê‚Î ‘qŒÉ�A“��A’I�A”Ô�†‚𕪊„�o—ˆ‚Ü‚·‚Ì‚Å�Ⴞ‚é‚Ü‚³‚ñ‚Ì•û‚ÅŒˆ‚߂Ă¢‚½‚¾‚¯‚ê‚΂»‚Ì—l‚É’¼‚¹‚Ü‚· ‘´‚Ì�ê�‡�Aˆê•¶Žš‚ÂÂ�o‚È‚‚Ä‚à‘P‚¢‚Å‚· —Ⴆ‚Î�A�uƒ�ƒWƒXƒeƒBƒbƒN;“Œ;B;1�v‚â�uƒ�ƒWƒXƒeƒBƒbƒN,“Œ,B,1�v“™
>�i‚±‚±‚ÍŽ„‚à‚Ç‚¤‚·‚ê‚Γü—̓~ƒX‚È‚‹L“ü‚Å‚«‚é‚©�l‚¦‚Ä‚¢‚邯‚±‚ë‚Å‚·�BŒ»�݂̃}ƒXƒ^�[‚ª‘S‚ÄŽè“ü—͂Š‘SŠp”¼Šp‚Ȃǂ̔÷–‚ȈႢ‚ª‘½‚¢‚Ì‚Å�c�j
Up‚µ‚½ƒ}ƒNƒ�‚ł͑qŒÉ�A“��A’I�A”Ô�†‚ðƒtƒBƒ‹ƒ^ƒIƒvƒVƒ‡ƒ“‚Å�i‚è�ž‚ñ‚Å‹�‚é‚̂ł·‚ª�H �ã‹L‚Ì—l‚É‘S”¼Šp�¬�݂̗l‚È�ó‘Ô‚Å‚Í�i‚è�ž‚߂܂¹‚ñ‚Ë ˆê�s‚ÂÂStrComp‚ÅŠm”F‚·‚é—l‚É‚µ‚Ü‚·‚©�H
(Bun)
Œã�A�‘‚«–Y‚ê‚Ü‚µ‚½‚ª ‘qŒÉ�A“��A’I�A”Ô�†‚͈ê‚‚̃Zƒ‹‚ɘAŒ‹‚·‚é•K—v‚Í•K‚¸‚µ‚à—L‚è‚Ü‚¹‚ñ‚̂Š�Ÿ‚ꂪ�A•Ê�X‚ɃZƒ‹‚É“ü‚Á‚Ä‚¢‚é�ó‘Ô‚Å‚à�\‚¢‚Ü‚¹‚ñ�A‘´‚ê‚È‚è‚Ɏ擾‚µ‚Ü‚·‚̂Š‚½‚¾�Aƒ}ƒNƒ�‚ð�ì‚é�ã‚łǂ̂悤‚ÈŒ`‚Å’ñ‹Ÿ‚³‚ê‚é‚©‚ª–â‘è‚Å‚·‚Ì‚Å�A ‚±‚ê‚ðƒ}ƒNƒ�‚É“n‚·•ûŽ®‚ð‘�‚Šm—§‚µ‚ĉº‚³‚¢ ‘´‚ê‚É‚æ‚è�A‘qŒÉ“™‚Ì•¶Žš—ñ‚É‘S”¼Šp‚ª�¬�Ý‚·‚é’ö“x‚È‚ç�u‚·‚é�v‚ÆŒ¾‚¦‚Î ‘´‚ê�¬‚è‚Ì‘Î�ˆ‚à�o—ˆ‚邯Žv‚¢‚Ü‚·
(Bun)
ˆê‰ž�A‘qŒÉ�A“��A’I�A”Ô�†‚̓tƒBƒ‹ƒ^ƒIƒvƒVƒ‡ƒ“‚Å‚Ì�i‚è�ž‚Ý‚ð’ú‚ß ‘S”¼Šp‚Ì‹zŽû‚ð�s‚¤ˆ×‚É�A�s‚ð�ã‚©‚猩‚Ä�s‚Žž“_‚ÅStrCompŠÖ�”‚Å”äŠr‚ð�s‚¤—l‚É•Ï�X‚µ‚Ü‚µ‚½ ‚½‚¾�A•s—vƒf�[ƒ^‚Ì”r�œ�Aƒ}ƒXƒ^‚̕یì‚ׂ̈ɃtƒBƒ‹ƒ^ƒIƒvƒVƒ‡ƒ“Ž©‘͎̂g—p‚µ‚Ü‚· ˆö‚Á‚Ä�u�ì‹Æ—p�vƒV�[ƒg‚Í‘S‚“¯‚¶•¨‚ðŽg—p‚µ‚Ü‚·‚̂ő´‚̂܂܂ɂµ‚ĉº‚³‚¢
‚Ü‚½�A�u“Š“ü•\�v‚ÌB7‚Ì�‘Ž®‚͈ê’U�A—Ⴆ‚Î�uƒ�ƒWƒXƒeƒBƒbƒN:“Œ:B:1�v‚Ì—l‚É ‹æ�Ø‚è•¶Žš‚É�u:�vƒ_ƒuƒ‹ƒRƒ�ƒ“‚ð‹²‚ñ‚¾˜AŒ‹‚É‚µ‚Ä’u‚«‚Ü‚· �Ÿ‚ê‚Í�A�u“Š“ü•\�v‚ÌŽd—l‚ªŒˆ‚Ü‚Á‚½Žž“_‚Å•Ï�X‚·‚ê‚΋X‚µ‚¢‚©‚ÆŽv‚¢‚Ü‚· ‚±‚ê‚Å�A‰^—pƒeƒXƒg’ö“x‚Í�o—ˆ‚é‚̂ł͎v‚¢‚Ü‚·‚Ì‚Å�AƒeƒXƒg‚µ‚Ä•s“s�‡‚ð“Z‚߂ĉº‚³‚¢
�®�A�u“Š“ü•\�v‚Ì15�s–ڈȉº‚Ì�í�œ‚̓Rƒ�ƒ“ƒgƒAƒEƒg‚ÅŽ~‚߂ėL‚è‚Ü‚·
Option Explicit
Public Sub Sample_3()
Dim i As Long
Dim j As Long
Dim k As Long
Dim lngRows As Long
Dim lngColumns As Long
Dim rngList As Range
Dim rngResult As Range
Dim rngWork As Range
Dim vntData As Variant
Dim vntSets As Variant
Dim vntPlace As Variant
Dim lngCount As Long
Dim vntStockID As Variant
Dim vntResult As Variant
Dim lngMax As Long
Dim strProm As String
'“ü‰×ƒ}ƒXƒ^�[List‚Ì�擪ƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�擪—ñ‚Ì—ñŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
Set rngList = Worksheets("“ü‰×ƒ}ƒXƒ^�[").Range("A1")
'“Š“ü•\‚Ì�ÝŒÉIDƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�sŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
Set rngResult = Worksheets("“Š“ü•\").Range("A14")
'�ì‹Æ—pƒV�[ƒg‚Ì’Š�o”͈͂Ì�擪ƒZƒ‹ˆÊ’u(ƒ}ƒXƒ^‚©‚ç•K—vƒf�[ƒ^‚ð’Š�o)
Set rngWork = Worksheets("�ì‹Æ—p").Range("A1")
'‰æ–Ê�X�V‚ð’âŽ~
Application.ScreenUpdating = False
'“Š“ü•\‚É�A‚¢‚Ä
With rngResult
'—ñ�”‚̎擾
lngColumns = .Offset(, Columns.Count - .Column).End(xlToLeft).Column - .Column
If lngColumns <= 0 Then
strProm = .Parent.Name & "‚Ƀf�[ƒ^‚ª—L‚è‚Ü‚¹‚ñ"
GoTo Wayout
End If
'Set�”‚ðŽæ“¾
vntSets = .Parent.Range("B2").Value
If Val(vntSets) < 1 Then
strProm = "ƒZƒbƒg�”‚ª�ݒ肳‚ê‚Ä‚¢‚Ü‚¹‚ñ"
GoTo Wayout
End If
'�oŒÉ�ê�Š‚ðŽæ“¾
vntData = .Parent.Range("B7").Value
vntPlace = Split(vntData, ":", , vbTextCompare)
If UBound(vntPlace, 1) < 3 Then
strProm = "�oŒÉ�ê�Š‚Ì“ü—Í‚ª�³‚µ‚—L‚è‚Ü‚¹‚ñ"
GoTo Wayout
End If
'�ÝŒÉID‚ðŽæ“¾
vntStockID = .Offset(, 1).Resize(, lngColumns).Value
'�s�”‚̎擾
' lngRows = .Offset(Rows.Count - .Row).End(xlUp).Row - .Row '�š�í�œ
' If lngRows > 0 Then '�š�í�œ
' .Offset(1).Resize(lngRows).EntireRow.Delete '�š�í�œ
' End If '�š�í�œ
End With
'“ü‰×ƒ}ƒXƒ^�[‚©‚ç•K—vƒf�[ƒ^‚ðŽæ“¾
If Not GetData(vntData, rngList, rngWork, vntStockID) Then
strProm = "ƒf�[ƒ^‚̎擾‚ª�o—ˆ‚Ü‚¹‚ñ�A�ÝŒÉID�A�oŒÉ�ê�Š“™‚ðŠm”F‚µ‚ĉº‚³‚¢"
GoTo Wayout
End If
'ƒf�[ƒ^�s�”‚ðŽæ“¾
lngRows = UBound(vntData, 1)
'“Š“ü•\‚Ì�ÝŒÉID‚ð‰¡‚ÉŒ©‚Ä�s‚Á‚Ä
For i = 1 To lngColumns
'�o—Í�sˆÊ’u‚ð�‰Šú‰»
k = 0
'“ü‰×ƒ}ƒXƒ^‚Ì�ÝŒÉID‚ð�ã‚©‚猩‚Ä�s‚Á‚Ä
For j = 1 To lngRows
'�ÝŒÉID‚ª“™‚µ‚¢‚È‚ç
If vntStockID(1, i) = vntData(j, 2) Then
'�oŒÉ�ê�Š‚Ìƒ`ƒFƒbƒN‚ªTrue‚È‚ç
If PlaceCheck(vntPlace, j, vntData) Then
'For‚𔲂¯‚é
Exit For
End If
End If
Next j
'�o—Í�s‚ð�X�V
k = k + 1
'�o—Í—p”z—ñ‚ðŠm•Û
ReDim vntResult(1 To k * 2)
'�ÝŒÉID‚ª“™‚µ‚¢‚È‚ç
If j <= lngRows Then
'•K—v�”‚ð“]‹L
lngCount = vntSets
'“ü‰×Žó•t”Ô�†‚ð“]‹L
vntResult(k) = "'" & vntData(j, 1)
'Žg—pŠúŒÀ‚ð“]‹L
vntResult(k * 2) = GetDate(vntData(j, 4), vntData(j, 5), vntData(j, 6))
'•K—v�”‚©‚ç�ÝŒÉ�”‚ðƒ}ƒCƒiƒX
lngCount = lngCount - vntData(j, 3)
'�݌ɂª•K—v�”‚ð–ž‚½‚·–˜ŒJ‚è•Ô‚µ
Do Until lngCount <= 0
'“ü‰×ƒ}ƒXƒ^‚ðŒ©‚é�s‚ð�X�V
j = j + 1
'�ÝŒÉID‚ª“™‚µ‚¢‚È‚ç
If vntStockID(1, i) = vntData(j, 2) Then
'�oŒÉ�ê�Š‚Ìƒ`ƒFƒbƒN‚ªTrue‚È‚ç
If PlaceCheck(vntPlace, j, vntData) Then
'�o—Í�s‚ð�X�V
k = k + 1
'�o—Í—p”z—ñ‚ðŠg’£
ReDim Preserve vntResult(1 To k * 2)
'“ü‰×Žó•t”Ô�†‚ð“]‹L
vntResult(k * 2 - 1) = "'" & vntData(j, 1)
'Žg—pŠúŒÀ‚ð“]‹L
vntResult(k * 2) = GetDate(vntData(j, 4), vntData(j, 5), vntData(j, 6))
'•K—v�”‚©‚ç�ÝŒÉ�”‚ðŒ¸ŽZ
lngCount = lngCount - vntData(j, 3)
End If
Else
'�o—Í�s‚ð�X�V
k = k + 1
'�o—Í—p”z—ñ‚ðŠg’£
ReDim Preserve vntResult(1 To k * 2)
vntResult(k * 2 - 1) = lngCount & "–‡•s‘«"
Exit Do
End If
Loop
Else
vntResult(k * 2 - 1) = vntSets & "–‡•s‘«"
End If
'Œ‹‰Ê‚ð�o—Í
rngResult.Offset(1, i).Resize(k * 2).Value _
= WorksheetFunction.Transpose(vntResult)
'•s‘«‚Ì�ê�‡‚Ì�ˆ—�
If InStr(1, vntResult(k * 2 - 1), "–‡•s‘«") Then
rngResult.Offset(k * 2 - 1, i).Font.Color = vbRed
End If
'�o—Í‚Ì�Å‘å�s�”‚ð•Û‘¶
If lngMax < k Then
lngMax = k
End If
Next i
'“ü‰×“ú�AŽg—pŠúŒÀ‚ð�‘‚«�ž‚Þ
ReDim vntResult(1 To 2, 1 To 1)
vntResult(1, 1) = "“ü‰×“ú"
vntResult(2, 1) = "Žg—pŠúŒÀ"
For i = 0 To lngMax - 1
rngResult.Offset(i * 2 + 1).Resize(2).Value = vntResult
Next i
strProm = "�ˆ—�‚ªŠ®—¹‚µ‚Ü‚µ‚½"
Wayout:
'‰æ–Ê�X�V‚ð�ÄŠJ
Application.ScreenUpdating = True
Set rngList = Nothing
Set rngResult = Nothing
Set rngWork = Nothing
MsgBox strProm, vbInformation
End Sub
Private Function PlaceCheck(vntCheck As Variant, _
lngPos As Long, vntData As Variant) As Boolean
Dim i As Long
'‘qŒÉ�A“��A’I�A”Ô�†‚ðƒ`ƒFƒbƒN
For i = 0 To UBound(vntCheck, 1)
If StrComp(vntCheck(i), vntData(lngPos, i + 7), vbTextCompare) <> 0 Then
Exit For
End If
Next i
'‘S‚Ĉê’v‚Ì�ê�‡
If i > UBound(vntCheck, 1) Then
'–ß‚è’l‚Æ‚µ‚ÄTrue‚ð•Ô‚·
PlaceCheck = True
End If
End Function
Private Function GetData(vntData As Variant, rngList As Range, _
rngWork As Range, vntStockID As Variant) As Boolean
' “ü‰×ƒ}ƒXƒ^�[‚©‚çAdvancedFilter‚ðŽg‚Á‚ăf�[ƒ^‚ðŽæ“¾
Dim i As Long
Dim j As Long
Dim vntCrit As Variant
Dim rngCrit As Range
Dim lngRows As Long
'�ì‹Æ—pƒV�[ƒg‚Ì�ðŒ�”͈͂Ì�擪ƒZƒ‹ˆÊ’u(ƒ}ƒXƒ^‚©‚ç•K—vƒf�[ƒ^‚ð’Š�o)
Set rngCrit = rngWork.Parent.Range("N1")
'�ÝŒÉID‚ð’Š�o�ðŒ�‚É�o—Í
ReDim vntCrit(1 To UBound(vntStockID, 2), 1 To 1)
For i = 1 To UBound(vntStockID, 2)
vntCrit(i, 1) = "=" & """=" & vntStockID(1, i) & """"
Next i
rngCrit.Offset(1).Resize(UBound(vntStockID, 2)).Value = vntCrit
'“ü‰×ƒ}ƒXƒ^�[‚©‚ç•K—vƒf�[ƒ^‚ð’Š�o
DoFilter rngList.CurrentRegion, _
rngCrit.Resize(UBound(vntStockID, 2) + 1), _
rngWork.Resize(, 11)
'�ì‹Æ—pƒV�[ƒg‚É�A‚¢‚Ä
With rngWork
'�s�”‚̎擾
lngRows = .Offset(Rows.Count - .Row).End(xlUp).Row - .Row
If lngRows <= 0 Then
GoTo Wayout
End If
'�ÝŒÉID�‡‚ÌŽg—pŠúŒÀ�i”N�AŒŽ�A“ú�j�‡‚Ì“ü‰×“ú�‡‚ÅList‚ð�®—ñ
'A—ñ‚©‚ç�®—ñ‚·‚é—ñ‚Ì—ñOffset‚ðŽw’è,‘S‚Ä�¸�‡‚Å
DataSort .Offset(1).Resize(lngRows, 11), Array(2, 4, 5, 6, 1), _
Array(xlAscending, xlAscending, xlAscending, _
xlAscending, xlAscending)
'‘S—ñƒf�[ƒ^‚ð”z—ñ‚Ɏ擾
vntData = .Offset(1, 1).Resize(lngRows + 1, 10).Value
End With
GetData = True
Wayout:
Set rngCrit = Nothing
End Function
Private Function GetDate(vntYear As Variant, vntMonth As Variant, _
vntDay As Variant) As Variant
'Žg—pŠúŒÀ�i”N&ŒŽ&“ú�j‚ª“ú•t‚Æ”F‚ß‚ç‚ê‚é‚È‚ç
If IsDate(vntYear & "/" & vntMonth & "/" & vntDay) Then
'ƒVƒŠƒAƒ‹’l‚ɕϊ·
GetDate = DateSerial(vntYear, vntMonth, vntDay)
Else
'*‚ð•Ô‚·
GetDate = "*"
End If
End Function
Private Sub DoFilter(rngScope As Range, _
rngCriteria As Range, _
rngCopyTo As Range, _
Optional blnUnique As Boolean)
' AdvancedFilter‚ðŽÀ�s
rngScope.AdvancedFilter _
Action:=xlFilterCopy, _
CriteriaRange:=rngCriteria, _
CopyToRange:=rngCopyTo, _
Unique:=blnUnique
End Sub
Private Sub DataSort(rngScope As Range, _
vntKeys As Variant, _
vntOrders As Variant, _
Optional lngOrientation As Long = xlTopToBottom)
Dim i As Long
Dim rngTop As Range
Set rngTop = rngScope.Cells(1, 1)
With rngTop.Parent
.Sort.SortFields.Clear
For i = 0 To UBound(vntKeys, 1)
.Sort.SortFields.Add Key:=rngTop.Offset(, vntKeys(i)) _
, SortOn:=xlSortOnValues, Order:=vntOrders(i) _
, DataOption:=xlSortNormal
Next i
With .Sort
.SetRange rngScope
.Header = xlNo
.MatchCase = False
.Orientation = lngOrientation
.SortMethod = xlStroke
.Apply
End With
End With
Set rngTop = Nothing
End Sub
(Bun)
–{“–‚É‚¨Žè�”‚ð‚¨‚©‚¯‚µ‚Ü‚·�B
>‘qŒÉ�A“��A’I�A”Ô�†‚͈ê‚‚̃Zƒ‹‚ɘAŒ‹‚·‚é•K—v‚Í•K‚¸‚µ‚à—L‚è‚Ü‚¹‚ñ‚̂Š—Ⴆ‚Î�u“Š“ü•\�v‚ÌB7�AC7‚Æ•¡�”ƒZƒ‹‚É“ü—Í‚µ‚Ä‚à‘å�ä•v‚Æ‚¢‚¤‚±‚Ƃłµ‚傤‚©�H
‘qŒÉ�`‚ÌŒ�‚Å‚¢‚‚‚©•Ï�X‚Æ‚±‚¿‚ç‚Å�l‚¦‚½‚±‚Æ‚ª‚ ‚è‚Ü‚·‚Ì‚Å‚Æ‚è‚ ‚¦‚¸‚܂Ƃ߂܂·�B
�EŽQ�Æ‚·‚é‚Ì‚Í�u‘qŒÉ�v�u“��v‚Ì2—ñ‚¾‚¯‚ÅOK�i’I‚Æ”Ô�†‚Í•s—v�j �Eƒ}ƒXƒ^�[‚ª‘SŠp”¼Šp‚̂ق©‚É�u‚¨‹q—l‘Ήž—p�v�u‚¨‹q‚³‚ܑΉž�v‚ȂǓ¯‚¶“à—e‚ł܂Á‚½‚ˆá‚¤�‘‚«•û‚ð‚µ‚Ä‚¢‚é‚à‚Ì‚ª‚ ‚é‚Ì‚Å�A •ʃV�[ƒg‚É�u‘qŒÉ�E’Iƒ}ƒXƒ^�[�v‚ð�ì‚è�A“ü—Í‹K‘¥‚Æ–¼‘O‚Ì’è‹`‚ð—˜—p‚µ‚ă}ƒXƒ^�[�E“Š“ü•\‚Æ‚àƒvƒ‹ƒ_ƒEƒ“ƒŠƒXƒg‚©‚ç‘I‘ð‚·‚é‚æ‚¤‚É‚µ‚悤‚ÆŽv‚¢‚Ü‚·�B ‚»‚ê‚Å�A‚Å‚«‚ê‚Î“Š“ü•\‚ÌB7‚É�u‘qŒÉ�vC7‚É�u“��v‚Ì�€–Ú‚ð�A‚»‚ꂼ‚ê“ü—Í‹K‘¥‚Å“ü‚ê‚æ‚¤‚ÆŽv‚¢‚Ü‚·�B
‚±‚ê‚ňê“xƒ}ƒXƒ^�[‚ðƒ�ƒ“ƒe‚µ‚Ä‚©‚狳‚¦‚Ä‚¢‚½‚¾‚¢‚½ƒR�[ƒh‚ŃeƒXƒg‚µ‚Ă݂܂·�B ‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
�i�Ⴞ‚é‚Ü�j
>>‘qŒÉ�A“��A’I�A”Ô�†‚͈ê‚‚̃Zƒ‹‚ɘAŒ‹‚·‚é•K—v‚Í•K‚¸‚µ‚à—L‚è‚Ü‚¹‚ñ‚̂Š>—Ⴆ‚Î�u“Š“ü•\�v‚ÌB7�AC7‚Æ•¡�”ƒZƒ‹‚É“ü—Í‚µ‚Ä‚à‘å�ä•v‚Æ‚¢‚¤‚±‚Ƃłµ‚傤‚©�H
‘å�ä•v‚Å‚·�A’A‚µUp‚µ‚½ƒ}ƒNƒ�‚ł͂»‚Ì—l‚È“ü—͂ɑ΂µ‚ẴR�[ƒh‚É�¬‚Á‚Ä‚¢‚é‚̂Šˆê•”ƒR�[ƒh‚Ì•Ï�X‚ª•K—v‚É�¬‚è‚Ü‚·
>‘qŒÉ�`‚ÌŒ�‚Å‚¢‚‚‚©•Ï�X‚Æ‚±‚¿‚ç‚Å�l‚¦‚½‚±‚Æ‚ª‚ ‚è‚Ü‚·‚Ì‚Å‚Æ‚è‚ ‚¦‚¸‚܂Ƃ߂܂·�B > > >�EŽQ�Æ‚·‚é‚Ì‚Í�u‘qŒÉ�v�u“��v‚Ì2—ñ‚¾‚¯‚ÅOK�i’I‚Æ”Ô�†‚Í•s—v�j >�Eƒ}ƒXƒ^�[‚ª‘SŠp”¼Šp‚̂ق©‚É�u‚¨‹q—l‘Ήž—p�v�u‚¨‹q‚³‚ܑΉž�v‚ȂǓ¯‚¶“à—e‚ł܂Á‚½‚ˆá‚¤�‘‚«•û‚ð‚µ‚Ä‚¢‚é‚à‚Ì‚ª‚ ‚é‚Ì‚Å�A >•ʃV�[ƒg‚É�u‘qŒÉ�E’Iƒ}ƒXƒ^�[�v‚ð�ì‚è�A“ü—Í‹K‘¥‚Æ–¼‘O‚Ì’è‹`‚ð—˜—p‚µ‚ă}ƒXƒ^�[�E“Š“ü•\‚Æ‚àƒvƒ‹ƒ_ƒEƒ“ƒŠƒXƒg‚©‚ç‘I‘ð‚·‚é‚æ‚¤‚É‚µ‚悤‚ÆŽv‚¢‚Ü‚·�B >‚»‚ê‚Å�A‚Å‚«‚ê‚Î“Š“ü•\‚ÌB7‚É�u‘qŒÉ�vC7‚É�u“��v‚Ì�€–Ú‚ð�A‚»‚ꂼ‚ê“ü—Í‹K‘¥‚Å“ü‚ê‚æ‚¤‚ÆŽv‚¢‚Ü‚·�B
>‚±‚ê‚ňê“xƒ}ƒXƒ^�[‚ðƒ�ƒ“ƒe‚µ‚Ä‚©‚狳‚¦‚Ä‚¢‚½‚¾‚¢‚½ƒR�[ƒh‚ŃeƒXƒg‚µ‚Ă݂܂·�B
‚Å‚Í�A‚»‚Ì—l‚ÈŽd—l‚ŃR�[ƒh‚Ì•Ï�X‚ð‚µ‚Ü‚·‚©�H
(Bun)
BUN—l
>‚»‚Ì—l‚ÈŽd—l‚ŃR�[ƒh‚Ì•Ï�X‚ð‚µ‚Ü‚·‚©�H
‚Í‚¢�A‚¨Šè‚¢‚µ‚Ü‚·<(__)>
�i�Ⴞ‚é‚Ü�j
ƒ}ƒNƒ�‚ÌŽd—l•Ï�X‚ð‚µ‚Ü‚µ‚½ �u“Š“ü•\�v‚ÌB7‚É�u‘qŒÉ�v�AC7‚É�u“��v‚ª“ü‚è‚Ü‚·
ˆÈ‰º‚Ì�šˆó‚ð•Ï�X�A’ljÁ‚µ‚ĉº‚³‚¢�i‘O‚̃R�[ƒh‚̓Rƒ�ƒ“ƒgƒAƒEƒg‚µ‚ÄŽc‚µ‚Ä—L‚è‚Ü‚·�j
�uSub Sample_3�v‚̃vƒ�ƒV�[ƒWƒƒ‚Ì’†‚Ì
'“Š“ü•\‚É�A‚¢‚Ä
With rngResult
'—ñ�”‚̎擾
lngColumns = .Offset(, Columns.Count - .Column).End(xlToLeft).Column - .Column
If lngColumns <= 0 Then
strProm = .Parent.Name & "‚Ƀf�[ƒ^‚ª—L‚è‚Ü‚¹‚ñ"
GoTo Wayout
End If
'Set�”‚ðŽæ“¾
vntSets = .Parent.Range("B2").Value
If Val(vntSets) < 1 Then
strProm = "ƒZƒbƒg�”‚ª�ݒ肳‚ê‚Ä‚¢‚Ü‚¹‚ñ"
GoTo Wayout
End If
'�oŒÉ�ê�Š‚ðŽæ“¾
' vntData = .Parent.Range("B7").Value
' vntPlace = Split(vntData, ":", , vbTextCompare)
' If UBound(vntPlace, 1) < 3 Then
' strProm = "�oŒÉ�ê�Š‚Ì“ü—Í‚ª�³‚µ‚—L‚è‚Ü‚¹‚ñ"
' GoTo Wayout
' End If
vntPlace = .Parent.Range("B7:C7").Value '�š•Ï�X
'�ÝŒÉID‚ðŽæ“¾
' vntStockID = .Offset(, 1).Resize(, lngColumns).Value
'�š�u“Š“ü•\�v‚Ì�ÝŒÉID‚ª1—ñ‚Ì�ê�‡‚É‘Î�ˆ
vntStockID = .Offset(, 1).Resize(, lngColumns + 1).Value '�š•Ï�X
ReDim Preserve vntStockID(1 To 1, 1 To lngColumns) '�š’ljÁ
'�s�”‚̎擾
' lngRows = .Offset(Rows.Count - .Row).End(xlUp).Row - .Row '�š�í�œ
' If lngRows > 0 Then '�š�í�œ
' .Offset(1).Resize(lngRows).EntireRow.Delete '�š�í�œ
' End If '�š�í�œ
End With
�uFunction PlaceCheck�v‚É�A‚¢‚Ä‚Í
Private Function PlaceCheck(vntCheck As Variant, _
lngPos As Long, vntData As Variant) As Boolean
Dim i As Long
'‘qŒÉ�A“��A’I�A”Ô�†‚ðƒ`ƒFƒbƒN
' For i = 0 To UBound(vntCheck, 1)
For i = 1 To UBound(vntCheck, 2) '�š•Ï�X
' If StrComp(vntCheck(i), vntData(lngPos, i + 7), vbTextCompare) <> 0 Then
If StrComp(vntCheck(1, i), vntData(lngPos, i - 1 + 7), vbTextCompare) <> 0 Then '�š•Ï�X
Exit For
End If
Next i
'‘S‚Ĉê’v‚Ì�ê�‡
' If i > UBound(vntCheck, 1) Then
If i > UBound(vntCheck, 2) Then '�š•Ï�X
'–ß‚è’l‚Æ‚µ‚ÄTrue‚ð•Ô‚·
PlaceCheck = True
End If
End Function
ˆÈ�ã‚Å‚·
(Bun)
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B ƒeƒXƒgƒf�[ƒ^‚ÅŽŽ‚µ‚½‚Æ‚±‚ëŽv‚¢’Ê‚è‚ÌŒ‹‰Ê‚ª�o‚Ü‚µ‚½�B
‚·‚݂܂¹‚ñ�A‚à‚¤ˆê‚‚¾‚¯‚¨•·‚«‚µ‚½‚¢‚̂ł·‚ª�i–{“–‚É‚·‚݂܂¹‚ñ�j
Ž¿–â‚Ì�Å�‰‚É�‘‚¢‚½“ü‰×ƒ}ƒXƒ^�[‚̃ŒƒCƒAƒEƒg
�@�@�@A�@�@�@B�@�@�@C�@�@�@�@D�@�@�@�@E�@�@�@�@�@F�@�@�@�@�@G�@�@�@�@�@�@�@H�@�@�@�@�@�@�@I�@�@�@ 1 “ü‰×ID�@“ü‰×“ú�@�ÝŒÉID�@�@•i–¼�@“ü‰×—\’è�”�@“ü‰×ŽÀ�”�@Žg—pŠúŒÀ�i”N�j�@Žg—pŠúŒÀ�iŒŽ�j�@Žg—pŠúŒÀ�i“ú�j
‚±‚Ì•À‚Ñ‚ª•Ï‚í‚Á‚½‚èŠÔ‚ɕʂ̃f�[ƒ^‚Ì—ñ‚ª‘}“ü‚³‚ꂽ�ê�‡�A‚ǂ̕”•ª‚ð•Ï�X‚·‚ê‚΂悢‚Å‚µ‚傤‚©�B
�Å�‰‚ɃAƒbƒv‚µ‚Ä‚¢‚½‚¾‚¢‚½ƒR�[ƒh‚Å‚Í offsetƒvƒ�ƒpƒeƒB‚̈ø�”‚ð‚¢‚¶‚Á‚½‚肵‚Ăł«‚½‚̂ł·‚ª�A�¡‰ñ‚Ì ƒ}ƒXƒ^�[‚©‚ç�ì‹Æ—pƒV�[ƒg‚Ƀf�[ƒ^‚ð“n‚·�ۂɂǂ̕”•ª‚Ń}ƒXƒ^�[‚Ì—ñ‚ðŽw’肵‚Ä‚¢‚é‚Ì‚©‚ª‚æ‚•ª‚©‚è‚Ü‚¹‚ñ�c
‚·‚݂܂¹‚ñ�A�Å�‰‚ÉŽ¿–₵‚½Žž‚É�A•K—v‚ȃf�[ƒ^‚Ì—ñ‚ªA�`AD—ñ�i+AI—ñ�j‚܂Ńoƒ‰ƒoƒ‰‚ÉŽU‚ç‚΂Á‚Ä‚¢‚½‚Ì‚Å�A •K—v‚È—ñ‚¾‚¯‚ð‚܂Ƃ߂½“à—e‚ð‹L�Ú‚µ‚½‚ñ‚Å‚·�c
ŽÀ�Û‚Í
�@�@�@�@�ã‚Ì—á�@�¨�@ŽÀ�Û‚Ì—ñ “ü‰×ID�F�@�@A�@�@�@�@�@A “ü‰×“ú�F�@�@B�@�@�@�@�@I�@�@�@�@ �ÝŒÉID�F�@�@C�@�@�@�@�@N •i–¼�F�@�@�@D�@�@�@�@�@O “ü‰×—\’è�”�FE�@�@�@�@�@P “ü‰×ŽÀ�”�F�@F�@�@�@�@�@Q Žg—pŠúŒÀ”N�FG�@�@�@�@�@AB Žg—pŠúŒÀŒŽ�FH�@�@�@�@�@AC Žg—pŠúŒÀ“ú�FI�@�@�@�@�@AD
‚ƂȂÁ‚Ä‚¢‚Ü‚·�B •Ï�X•”•ª‚¾‚¯‹³‚¦‚Ä‚¢‚½‚¾‚¯‚Ü‚µ‚½‚炱‚¿‚ç‚Å�ì‹Æ‚µ‚Ü‚·‚Ì‚Å�A‚ǂ̕”•ª‚©‚¾‚¯‚¨‹³‚¦‚¢‚½‚¾‚¯‚Ü‚·‚Å‚µ‚傤‚©�B ‘qŒÉ�E“��E“ü‰×Žó•t”Ô�†‚Ì—ñ‚͕ςí‚è‚Ü‚¹‚ñ�B
Œ‹‰Ê“I‚É—]Œv‚ÈŽèŠÔ‚ð‚¨‚©‚¯‚·‚邱‚ƂɂȂÁ‚Ä‚µ‚Ü‚¢�A�\‚µ–󂲂´‚¢‚Ü‚¹‚ñ�B
‚æ‚낵‚‚¨Šè‚¢‚¢‚½‚µ‚Ü‚·�B
�i�Ⴞ‚é‚Ü�j
>‚±‚Ì•À‚Ñ‚ª•Ï‚í‚Á‚½‚èŠÔ‚ɕʂ̃f�[ƒ^‚Ì—ñ‚ª‘}“ü‚³‚ꂽ�ê�‡�A‚ǂ̕”•ª‚ð•Ï�X‚·‚ê‚΂悢‚Å‚µ‚傤‚©�B
>�Å�‰‚ɃAƒbƒv‚µ‚Ä‚¢‚½‚¾‚¢‚½ƒR�[ƒh‚Å‚Í offsetƒvƒ�ƒpƒeƒB‚̈ø�”‚ð‚¢‚¶‚Á‚½‚肵‚Ăł«‚½‚̂ł·‚ª�A�¡‰ñ‚Ì >ƒ}ƒXƒ^�[‚©‚ç�ì‹Æ—pƒV�[ƒg‚Ƀf�[ƒ^‚ð“n‚·�ۂɂǂ̕”•ª‚Ń}ƒXƒ^�[‚Ì—ñ‚ðŽw’肵‚Ä‚¢‚é‚Ì‚©‚ª‚æ‚•ª‚©‚è‚Ü‚¹‚ñ�c
>‚·‚݂܂¹‚ñ�A�Å�‰‚ÉŽ¿–₵‚½Žž‚É�A•K—v‚ȃf�[ƒ^‚Ì—ñ‚ªA�`AD—ñ�i+AI—ñ�j‚܂Ńoƒ‰ƒoƒ‰‚ÉŽU‚ç‚΂Á‚Ä‚¢‚½‚Ì‚Å�A >•K—v‚È—ñ‚¾‚¯‚ð‚܂Ƃ߂½“à—e‚ð‹L�Ú‚µ‚½‚ñ‚Å‚·�c
�¡‰ñ‚Ì�ê�‡�AŒ´‘¥“I‚Ƀ}ƒNƒ�‚Ì•Ï�X‚Í•K—v—L‚è‚Ü‚¹‚ñ ‚»‚Ì—l‚ÈŽ–‚àŠÜ‚ß�A�u�ì‹Æ—p�vƒV�[ƒg‚ɃtƒBƒ‹ƒ^ƒIƒvƒVƒ‡ƒ“�iAdvancedFilter�j‚Ńf�[ƒ^‚ð’Š�o‚µ‚Ä‚¢‚Ü‚· ‚±‚Ì�ê�‡�A’Š�oŒ³‚Ì�u“ü‰×ƒ}ƒXƒ^�v‚Ì—ñŒ©�o‚µ‚Æ’Š�o�æ‚Ì�u�ì‹Æ—p�v‚Ì—ñŒ©�o‚µ‚ª“¯‚¶•¨‚ª’Š�o‚³‚ê‚Ü‚· ˆö‚Á‚Ä�A�u�ì‹Æ—p�v‚Ì’Š�o”͈͂Æ�ðŒ�”͈̗͂ñŒ©�o‚µ‚ª�u“ü‰×ƒ}ƒXƒ^�v‚É–³‚¯‚ê‚΃Gƒ‰�[‚ð‹N‚±‚µ‚Ü‚·‚ª —L‚ê‚Î�A‘´�ˆ‚Ì—ñŒ©�o‚µ‚Ì—ñ‚É’Š�o‚³‚ê‚Ü‚· �u“ü‰×ƒ}ƒXƒ^�v‚Ì—ñ‚ª‘}“ü�í�œ‚Å—ñˆÊ’u‚ª•Ï‚í‚Á‚Ä‚à�A—ñŒ©�o‚µ‚³‚¦•Ï�X‚ª–³‚¯‚ê‚Α´‚̂܂܎g‚¦‚Ü‚· �Ÿ�ˆ‚Å�A ˆê”ԑ厖‚ÈŽ–‚Í�u�ì‹Æ—p�v‚Ì—ñŒ©�o‚µ‚Ì�‡”Ô‚Æ—ñˆÊ’u‚ð•Ï�X‚µ‚È‚¢Ž–‚Å‚· ‚Ü‚½�AŽ„‚Ì•û‚ÅŽwަ‚µ‚½�u�ì‹Æ—p�v‚Ì—ñŒ©�o‚µ‚ª�u“ü‰×ƒ}ƒXƒ^�v‚ƈá‚Á‚Ä‚¢‚½�ê�‡�A�u�ì‹Æ—p�v‚Ì—ñŒ©�o‚µ‚ð�u“ü‰×ƒ}ƒXƒ^�v‚É�‡‚킹‚ĉº‚³‚¢ ‚±‚Ì�ê�‡�AŽè“ü—Í‚Å�u�ì‹Æ—p�v‚Ì—ñŒ©�o‚µ‚ð•Ï�X‚·‚é‚̂ł͖³‚�A•K‚¸�u“ü‰×ƒ}ƒXƒ^�v‚Ì—ñŒ©�o‚µ‚ðCopy‚µ‚ĉº‚³‚¢ �iƒtƒBƒ‹ƒ^ƒIƒvƒVƒ‡ƒ“‚Í�_ŒoŽ¿‚Ȃ̂Å�A�lŠÔ‚ªŒ©‚Ĉꌩ“¯‚¶‚ÉŒ©‚¦‚Ä‚à Space‚ª“ü‚Á‚Ä‚¢‚½‚è‚Å‹C‚ª•t‚©‚È‚¢Ž–‚ª—L‚茋‰Ê“I‚É’Š�o�o—ˆ‚È‚¢ƒgƒ‰ƒuƒ‹‚ªŒ‹�\—L‚è‚Ü‚·�j
�ã‹L‚ªŽç‚ç‚ê�u�ì‹Æ—p�v‚É’Š�o‚ª�o—ˆ‚Ä‚¢‚ê‚Αå�ä•v‚¾‚ÆŽv‚¢‚Ü‚·
(Bun)
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
‚Å‚«‚Ü‚µ‚½�I
–{“–‚É�•‚©‚è‚Ü‚µ‚½�I
�i�Ⴞ‚é‚Ü�j
1‚•·‚«‚½‚¢‚̂ł·‚ª�H ‚±‚̃}ƒNƒ�‚ª�s‚Á‚Ä‚¢‚é�ˆ—�‚ÌŠT—v‚ª‰ð‚Á‚Ä‚¢‚é‚Ì‚©‚ª•·‚«‚½‚¢‚̂ł·‚ª�H ƒR�[ƒfƒBƒ“ƒO‹Z�p‚ÆŒ¾‚¤ˆÓ–¡‚ł͖³‚�AŽè�‡‚É�A‚¢‚Ăł· �Ÿ‚ꂪ‰ð‚Á‚ĂȂ¢‚Æ�A‚±‚ÌŒãƒ�ƒ“ƒeƒiƒ“ƒX‚Å‚à�A‰^—p‚Å�à–¾‚·‚é‚É‚µ‚Ä‚à�¢‚é‚̂łÍ�H
(Bun)
‚à‚¤Œ©‚Ä‚¢‚È‚¢‚©‚È�H ‚²‚ß‚ñ�AŽv‚¢�ž‚Ý‚ªŒƒ‚µ‚¢—l‚ŃR�[ƒh‚Í‚à‚Á‚ÆŠÈ’P‚Å�ς݂܂µ‚½ ˆÈ‰º‚Ì—l‚É�A�u Sub Sample_3�v‚Ì�u'“Š“ü•\‚Ì�ÝŒÉID‚ð‰¡‚ÉŒ©‚Ä�s‚Á‚Ä�v�`�uNext i�v–˜‚ð�·‚µ‘Ö‚¦‚ĉº‚³‚¢
'“Š“ü•\‚Ì�ÝŒÉID‚ð‰¡‚ÉŒ©‚Ä�s‚Á‚Ä
For i = 1 To lngColumns
'•K—v�”‚ð“]‹L
lngCount = vntSets
'�o—Í—p”z—ñ‚ð�‰Šú‰»
ReDim vntResult(1 To 1)
'“ü‰×ƒ}ƒXƒ^‚Ì�ÝŒÉID‚ð�ã‚©‚猩‚Ä�s‚Á‚Ä
j = 1
'�o—Í�s�”‚ð�‰Šú‰»
k = 0
Do Until lngCount <= 0
'�ÝŒÉID‚ª“™‚µ‚¢‚È‚ç
If vntStockID(1, i) = vntData(j, 2) Then
'�oŒÉ�ê�Š‚Ìƒ`ƒFƒbƒN‚ªTrue‚È‚ç
If PlaceCheck(vntPlace, j, vntData) Then
'�o—Í�s‚ð�X�V
k = k + 1
'�o—Í—p”z—ñ‚ðŠg’£
ReDim Preserve vntResult(1 To k * 2)
'“ü‰×Žó•t”Ô�†‚ð“]‹L
vntResult(k * 2 - 1) = "'" & vntData(j, 1)
'Žg—pŠúŒÀ‚ð“]‹L
vntResult(k * 2) = GetDate(vntData(j, 4), vntData(j, 5), vntData(j, 6))
'•K—v�”‚©‚ç�ÝŒÉ�”‚ðŒ¸ŽZ
lngCount = lngCount - vntData(j, 3)
End If
End If
'“ü‰×ƒ}ƒXƒ^‚ðŒ©‚é�s‚ð�X�V
j = j + 1
If j > lngRows Then
'�o—Í�s‚ð�X�V
k = k + 1
'�o—Í—p”z—ñ‚ðŠg’£
ReDim Preserve vntResult(1 To k * 2)
vntResult(k * 2 - 1) = lngCount & "–‡•s‘«"
Exit Do
End If
Loop
'Œ‹‰Ê‚ð�o—Í
rngResult.Offset(1, i).Resize(UBound(vntResult)).Value _
= WorksheetFunction.Transpose(vntResult)
'•s‘«‚Ì�ê�‡‚Ì�ˆ—�
If InStr(1, vntResult(k * 2 - 1), "–‡•s‘«") Then
rngResult.Offset(k * 2 - 1, i).Font.Color = vbRed
End If
'�o—Í‚Ì�Å‘å�s�”‚ð•Û‘¶
If lngMax < k Then
lngMax = k
End If
Next i
(Bun)
BUN—l
‚·‚݂܂¹‚ñ�A“y“ú‹x‚݂̂½‚ß�¡Œ©‚Ü‚µ‚½�c
Žè�‡‚̓Rƒ�ƒ“ƒg‚ð�ׂ©‚�‘‚¢‚Ä‚¢‚½‚¾‚¢‚Ä‚¢‚é‚̂ʼn½‚ð‚µ‚Ä‚¢‚é‚©‚Í‘å‘Ì•ª‚©‚è‚Ü‚·�B �u‰æ–Ê�X�V‚Ì’âŽ~�v�u�ÄŠJ�v‚Æ‚¢‚¤‚Ì‚ª�Å�‰‚Í•ª‚©‚ç‚È‚©‚Á‚½‚̂ł·‚ªGoogle‚ÅŒŸ�õ‚µ‚Ä‘½•ª—�‰ð‚Å‚«‚½‚ÆŽv‚¢‚Ü‚·�B
‚Æ‚±‚ë‚Å�A‘O‚É�‘‚«‚Ü‚µ‚½�u“Š“ü•\‚ª•¡�”‘¶�Ý‚·‚é�ê�‡�v‚Ì‘Î�ˆ‚Í
> '“Š“ü•\‚Ì�ÝŒÉIDƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�sŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
> Set rngResult = Worksheets("“Š“ü•\").Range("A14")
>‚ð
> '“Š“ü•\‚Ì�ÝŒÉIDƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�sŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
> Set rngResult = ActiveSheet.Range("A14")
‚±‚Ì•û–@‚Å–â‘è‚È‚¢‚Å‚µ‚傤‚©�B
‚ ‚Æ‚à‚¤‚P“_�A�ã‚©‚ç�u‚P�s–ڂɃ^ƒCƒgƒ‹�s�i2011”N12ŒŽ“ü‰×ƒ}ƒXƒ^�[‚Æ‚¢‚¤‚悤‚È�j‚ð“ü‚ꂽ‚¢�v‚ÆŒ¾‚í‚ꂽ‚Ì‚Å
'“ü‰×ƒ}ƒXƒ^�[List‚Ì�擪ƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�擪—ñ‚Ì—ñŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
Set rngList = Worksheets("ƒ}ƒXƒ^�[").Range("A2")
‚Æ—ñŒ©�o‚µ‚̃Zƒ‹ˆÊ’u‚ðA1�¨A2‚É‚µ‚Ă݂܂µ‚½‚ª�uƒtƒB�[ƒ‹ƒh–¼‚ª–³‚¢‚©–³Œø‚ȃtƒB�[ƒ‹ƒh‚Å‚·�v‚̃Gƒ‰�[‚ɂȂè‚Ü‚·�B
‘å•�‚È•Ï�X‚ª•K—v‚Å‚ ‚ê‚΂±‚ê‚Í’f‚è‚Ü‚·‚ª�A‚Ç‚±‚©‘¼‚É•Ï�X‚·‚ׂ«‚Æ‚±‚낪‚ ‚é‚̂łµ‚傤‚©�H
‚»‚ê‚Æ�A‚±‚̌㑽•ªƒ}ƒXƒ^�[‚©‚çŽg—p‚µ‚½•ª‚ð�·‚µˆø‚�ˆ—�‚ð‚·‚é‚æ‚¤‚É—v‹�‚³‚ê‚邯Žv‚¤‚̂ł·‚ª�A ‚»‚Ì�Û�AlngCount ‚Ì’l‚ðŽQ�Æ‚·‚邿‚¤‚ÈŒ`‚Å‘å�ä•v‚Å‚µ‚傤‚©�B �i‚±‚êˆÈ�ã‚Ì‚¨Šè‚¢‚͂ł«‚È‚¢‚ÆŽv‚¤‚Ì‚Å�ÝŒÉ�X�V�ˆ—�‚͉½‚Æ‚©Ž©—Í‚Å�l‚¦‚悤‚ÆŽv‚Á‚Ä‚¢‚Ü‚·�j
‰½“x‚à�\‚µ–󂲂´‚¢‚Ü‚¹‚ñ�„�ƒ
�i�Ⴞ‚é‚Ü�j
>Žè�‡‚̓Rƒ�ƒ“ƒg‚ð�ׂ©‚�‘‚¢‚Ä‚¢‚½‚¾‚¢‚Ä‚¢‚é‚̂ʼn½‚ð‚µ‚Ä‚¢‚é‚©‚Í‘å‘Ì•ª‚©‚è‚Ü‚·�B
‘´‚ê‚È‚ç‹X‚µ‚¢‚̂ł·‚ª ‚±‚̃}ƒNƒ�‚Í�lŠÔ‚ªŽ†‚Ɖ”•M�iƒ}ƒXƒ^ƒV�[ƒg‚Æ“Š“ü•\�j‚ÅŽè‚Å�s‚¤•û–@‚𑴂̂܂ÜExcel�ã‚Å�s‚Á‚Ä ‚¢‚镨‚Ȃ̂Å�AƒCƒ��[ƒW‚µ‚â‚·‚¢‚©‚ÆŽv‚¢‚Ü‚·
>‚Æ‚±‚ë‚Å�A‘O‚É�‘‚«‚Ü‚µ‚½�u“Š“ü•\‚ª•¡�”‘¶�Ý‚·‚é�ê�‡�v‚Ì‘Î�ˆ‚Í >‚±‚Ì•û–@‚Å–â‘è‚È‚¢‚Å‚µ‚傤‚©�B
–â‘è–³‚¢‚ÆŽv‚¢‚Ü‚·
>‚ ‚Æ‚à‚¤‚P“_�A�ã‚©‚ç�u‚P�s–ڂɃ^ƒCƒgƒ‹�s�i2011”N12ŒŽ“ü‰×ƒ}ƒXƒ^�[‚Æ‚¢‚¤‚悤‚È�j‚ð“ü‚ꂽ‚¢�v‚ÆŒ¾‚í‚ꂽ‚Ì‚Å
> '“ü‰×ƒ}ƒXƒ^�[List‚Ì�擪ƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�擪—ñ‚Ì—ñŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
> Set rngList = Worksheets("ƒ}ƒXƒ^�[").Range("A2")
>‚Æ—ñŒ©�o‚µ‚̃Zƒ‹ˆÊ’u‚ðA1�¨A2‚É‚µ‚Ă݂܂µ‚½‚ª�uƒtƒB�[ƒ‹ƒh–¼‚ª–³‚¢‚©–³Œø‚ȃtƒB�[ƒ‹ƒh‚Å‚·�v‚̃Gƒ‰�[‚ɂȂè‚Ü‚·�B
>‘å•�‚È•Ï�X‚ª•K—v‚Å‚ ‚ê‚΂±‚ê‚Í’f‚è‚Ü‚·‚ª�A‚Ç‚±‚©‘¼‚É•Ï�X‚·‚ׂ«‚Æ‚±‚낪‚ ‚é‚̂łµ‚傤‚©�H
�Ÿ‚ê‚Í�A�u�ì‹Æ—p�v‚É’Š�o‚·‚鎞�AƒtƒBƒ‹ƒ^ƒIƒvƒVƒ‡ƒ“�iAdvancedFilter�j‚ÌƒŠƒXƒg”͈͂ð“ü‰×ƒ}ƒXƒ^‚ÌA1‚Ì
CurrentRegion‚ÅŽæ‚Á‚Ä‚¢‚é‚Ì‚Å�ACurrentRegion‚Ì�ê�‡ƒZƒ‹”͈͂ª˜A‘±‚µ‚Ä‚¢‚邯‘´�ˆ‚Ü‚ÅList‚Æ‚µ‚Ď󂯎æ‚è‚Ü‚·
ˆö‚Á‚Ä�Aƒ^ƒCƒgƒ‹‚ð“ü‚ꂽ1�s–Ú‚É—ñŒ©�o‚µ‚ª—L‚镨‚µ‚Ü‚·‚Ì‚ÅrngList‚ðRange("A2")‚É‚µ‚Ä‚à
Excel‘¤‚ÍRange("A1")‚É�ݒ肵‚Ä‚¢‚é‚̂Ɠ¯‚¶‚Æ‘¨‚¦‚Ä‚¢‚éˆ×�A�uƒtƒB�[ƒ‹ƒh–¼‚ª–³‚¢‚©–³Œø‚ȃtƒB�[ƒ‹ƒh‚Å‚·�v‚̃Gƒ‰�[‚ª�o‚Ü‚·
�Ÿ‚ê‚ð‰ñ”ð‚·‚é‚É‚Í�A1�s–ڂɃ^ƒCƒgƒ‹‚ð“ü‚ê�A1�sŠJ‚¯‚Ä�i2�s–Ú‚Í‘S‚ċ󔒂̃Zƒ‹”͈Í�jList‚ª3�s–Ú‚Æ�¬‚é—l‚É‚µ
'“ü‰×ƒ}ƒXƒ^�[List‚Ì�擪ƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�擪—ñ‚Ì—ñŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
Set rngList = Worksheets("ƒ}ƒXƒ^�[").Range("A3")
‚ðA3‚ÉŽw’è‚·‚ê‚Αå�ä•v‚¾‚ÆŽv‚¢‚Ü‚·
>‚»‚ê‚Æ�A‚±‚̌㑽•ªƒ}ƒXƒ^�[‚©‚çŽg—p‚µ‚½•ª‚ð�·‚µˆø‚�ˆ—�‚ð‚·‚é‚æ‚¤‚É—v‹�‚³‚ê‚邯Žv‚¤‚̂ł·‚ª�A >‚»‚Ì�Û�AlngCount ‚Ì’l‚ðŽQ�Æ‚·‚邿‚¤‚ÈŒ`‚Å‘å�ä•v‚Å‚µ‚傤‚©�B >�i‚±‚êˆÈ�ã‚Ì‚¨Šè‚¢‚͂ł«‚È‚¢‚ÆŽv‚¤‚Ì‚Å�ÝŒÉ�X�V�ˆ—�‚͉½‚Æ‚©Ž©—Í‚Å�l‚¦‚悤‚ÆŽv‚Á‚Ä‚¢‚Ü‚·�j
‘´‚Ì�ê�‡�AŒ»�݂̃}ƒNƒ�‚ł͔z—ñ‚É‘g‚Ý“ü‚ê‚Ă͂¢‚Ü‚¹‚ñ‚ª�i�u�ì‹Æ—p�v‚ł͒Š�o‚µ‚Ä‚¢‚Ü‚·�j Žg—p‚µ‚½ƒŒƒR�[ƒh‚Ì�u“ü‰×ID�v‚ð—Š‚è‚ÉŒ¸Žc‚ð�s‚¤—l‚Å‚· Œ»�݃}ƒNƒ�‚Å�s‚¤‚Ì‚ªˆê”ԊԈႢ‚ª–³‚¢‚̂ł·‚ª�AŒ‹�\ƒ�ƒ“ƒhƒNƒTƒC‚©‚à�H ˆö‚Á‚Ä�A•ʂ̃}ƒNƒ��ì‚Á‚½•û‚ªŠy‚©‚È�H �i‘´‚ÌŽžŽg‚Á‚½�u�ì‹Æ—p�v‚Ì’Š�o�s‚ð•ʂȃV�[ƒg‚ɕۑ¶‚µ‚Ä‚¨‚¯‚Ίy‚¾‚ÆŽv‚¢‚Ü‚·�j
(Bun)
>‚»‚ê‚Æ�A‚±‚̌㑽•ªƒ}ƒXƒ^�[‚©‚çŽg—p‚µ‚½•ª‚ð�·‚µˆø‚�ˆ—�‚ð‚·‚é‚æ‚¤‚É—v‹�‚³‚ê‚邯Žv‚¤‚̂ł·‚ª�A
�Ÿ‚ê‚ÌŒ�‚Å�AUp‚µ‚½ŒãŽv‚¢‚‚¢‚½‚̂ł·‚ª�H
�u“Š“ü•\�v‚Ì‹L�q‚Ì�Ý‚é”͈͂̉E‘¤‚͋󂢂ċ�‚é‚̂łµ‚傤‚©�H ‚à‚µ‹ó‚¢‚Ä‚¢‚é‚È‚ç�A‚ǂ̗ñˆÈ�~‚©’m‚肽‚¢‚̂ł·‚ª�H ‘´�ˆ‚Ö�AŽg‚Á‚½ƒŒƒR�[ƒh‚ð�u“ü‰×ID�v‚ðŠÜ‚ß�o—Í‚µ‚Ä‚µ‚Ü‚¦‚ΑP‚¢‚̂łÍ�H �u“ü‰×ID�v‚ªƒ}ƒXƒ^‚É‚¨‚¢‚ă†ƒj�[ƒN‚ÅList‚Í�A‚±‚Ì�€–Ú‚ðKey‚Æ‚µ‚Ä�¸�‡�®—ñ‚³‚ê‚Ä‚¢‚é‚È‚ç Œã‚©‚ç�Aƒ}ƒXƒ^‚ÌŒ¸Žc‚ª�o—ˆ‚邯Žv‚¢‚Ü‚·‚æ
(Bun)
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B Œ©�o‚µ‚ÌŒ��A—¹‰ð‚¢‚½‚µ‚Ü‚µ‚½�B
�ÝŒÉ�ˆ—�‚̓}ƒNƒ�‚ð•Ê‚É�ì‚Á‚½•û‚ª‚æ‚¢‚̂ł·‚Ë�B
>�u“Š“ü•\�v‚Ì‹L�q‚Ì�Ý‚é”͈͂̉E‘¤‚͋󂢂ċ�‚é‚̂łµ‚傤‚©�H ‚Í‚¢�AO—ñˆÈ�~‚ªˆó�ü”͈͊O‚ŋ󂢂Ă¢‚Ü‚·�B Žg‚Á‚½ƒŒƒR�[ƒh‚Æ‚Í�u�ì‹Æ—p�v‚É’Š�o‚³‚ꂽ“à—e‚̂悤‚È‚à‚̂łµ‚傤‚©�B
�ã‚̒ljÁƒŒƒX‚ð‚¢‚½‚¾‚‘O‚É�l‚¦‚Ä‚¢‚½ƒR�[ƒh�«
If �u“Š“ü•\‚Ì“ü‰×Žó•t”Ô�†�v = �u�ì‹Æ—p‚Ì“ü‰×Žó•t”Ô�†�v Then
�@�@If �u1�s–Ú‚Ì�ÝŒÉ�”�v- �uƒZƒbƒg�”�v >= 0 Then �@�@�@�@�ÝŒÉ�” = �u1�s–Ú‚Ì�ÝŒÉ�”�v- �uƒZƒbƒg�”�v �@�@Else �@�@�@�@�u“Š“ü•\‚ÌŽŸ‚Ì�s‚Ì“ü‰×Žó•t”Ô�†�v = �u�ì‹Æ—p‚ÌŽŸ‚Ì�s‚Ì“ü‰×Žó•t”Ô�†�v Then �@�@�@�@�ÝŒÉ�” = �u2�s–Ú‚Ì�ÝŒÉ�”�v- �i�u1�s–Ú‚Ì�ÝŒÉ�”�v- �uƒZƒbƒg�”�v�j
�F�@�@�@�@�F�@�@�@�@�F
‚±‚ñ‚ÈŠ´‚¶‚Å‚µ‚傤‚©�B “ª‚ł͉½‚ƂȂŒvŽZ•û–@‚Í•ª‚©‚Á‚Ä‚¢‚é‚̂ł·‚ª‚Ü‚¾‚¤‚Ü‚ƒR�[ƒh‚É•\‚¹‚È‚‚Ä�c ‚¿‚å‚Á‚Æ�®—�‚µ‚È‚ª‚ç�l‚¦‚Ă݂܂·�B ‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
�i�Ⴞ‚é‚Ü�j
1‚•·‚«‚½‚¢Ž–‚ª—L‚è‚Ü‚·�AŒ³‚Ì�u“ü‰×ƒ}ƒXƒ^�v‚̃ŒƒR�[ƒh‚ð“Á’è‚·‚éˆ×‚ÌKey‚Æ‚µ‚Ä Œ³‚Ì�u“ü‰×ƒ}ƒXƒ^�v‚ª�¸�‡�®—ñ‚³‚ê‚Ä‚¢‚éˆêˆÓ�iƒ†ƒj�[ƒN�j‚Ì�€–Ú‚ª’m‚肽‚¢‚̂ł·‚ª�H �u“ü‰×ID�v‚Ì�€–Ú‚Å‚·‚©�u“ü‰×Žó•t”Ô�†�v‚Å‚·‚©�H �Ÿ‚ê‚É‚æ‚èƒ}ƒNƒ�‚ª•Ï‚í‚Á‚Ä‚«‚Ü‚·�iˆêˆÓ‚Å�¸�‡�®—ñ‚³‚ê‚Ä‚¢‚éKey‚È‚ç�AKey‚Ì’T�õ‚𑬂‚·‚鎖‚ª�o—ˆ‚Ü‚·�j
Ž„‚ªŽv‚¢�A‚¢‚½�A�¡‰ñ‚ÌŽè�‡‚͈ȉº‚Ì—l‚©‚ÆŽv‚¢‚Ü‚·�H
1�A�u“Š“ü•\�v‚ð�ì�¬‚·‚éƒ}ƒNƒ�‚Ì’†‚Å�A�u“Š“ü•\�v‚ÌO1‚ðŠî�€‚Æ‚µ �@�i—ñŒ©�o‚µ‚ðO1:P1‚Æ‚µ�Aƒf�[ƒ^‚ðO2ˆÈ‰º‚Æ‚µ‚Ü‚·�j �@O—ñ‚É�u“ü‰×ID�vŽá‚µ‚‚Í�u“ü‰×Žó•t”Ô�†�v‚ð‹L�Ú‚µ�AP—ñ‚ÉŽg—p�”—Ê‚ð‹L�Ú‚µ‚Ü‚· �@�Ÿ‚ê‚Í�A�u“Š“ü•\�v‚»‚Ì•¨‚ªƒ}ƒXƒ^‚̈êˆÓ‚Å�¸�‡�®—ñ‚³‚ê‚Ä‚¢‚éKey‚Æ–¾Šm‚ÈŽg—p�”—Ê‚ðŽ�‚Á‚Ä‚¢‚È‚¢ˆ×‚É �@�u“Š“ü•\�v�ì�¬Žž‚É�Ÿ‚ê‚ð‹L˜^‚µ‚Ä’u‚±‚¤‚ÆŒ¾‚¤Ž–‚Å‚· 2�A�u“Š“ü•\�v‚ÅŽg—p‚³‚ꂽ�”—Ê‚ð�u“ü‰×ƒ}ƒXƒ^�v‚©‚猸ŽZ‚³‚¹‚éƒ}ƒNƒ�‚ð�ì�¬‚µ‚Ü‚· �@�Ÿ‚ê‚̈Ӗ¡‚Í�A�u“Š“ü•\�vŒvŽZŽž‚É�݌ɕs‘«“™‚ŃZƒbƒg�”“™‚ð•Ï�X‚µ‚Ä�ÄŒvŽZ‚·‚é�ê�‡‚ð�l—¶‚µ‚Ä �@�i�ì�¬Žž‚É�݌Ɉø“–‚Ń}ƒXƒ^‚©‚猸ŽZ‚ð�s‚¤‚Æ�݌ɂª‚ß‚¿‚á‚‚¿‚á‚É�¬‚é�j �@•ʃ}ƒNƒ�‚É‚·‚ê‚Î�A�u“Š“ü•\�v‚ªŠm’肵‚½Œã‚É–¾Ž¦“I‚É�݌Ɉø“–�i�݌ɂ̌¸ŽZ�j‚ª�s‚¦‚Ü‚· 3�A‚±‚̃}ƒNƒ�‚ðŽÀ�s‚·‚邯�A�u“Š“ü•\�vO�`P—ñ‚ð�ã‚©‚猩‚Ä�s‚Á‚ÄO—ñ‚Ì�u“ü‰×ID�vŽá‚µ‚‚Í�u“ü‰×Žó•t”Ô�†�v‚ð �@�u“ü‰×ƒ}ƒXƒ^�v‚Ì�u“ü‰×ID�vŽá‚µ‚‚Í�u“ü‰×Žó•t”Ô�†�v‚©‚ç’T�õ‚µ‚Ü‚·�A �@’T�õ•û–@‚̓��[ƒNƒV�[ƒgŠÖ�”‚ÌMatchŠÖ�”‚Ì“ñ•ª’T�õ‚©Ž©‘O‚Ì“ñ•ª’T�õ‚ðŽg‚¢‚Ü‚· �@�i‚±‚ÌŽž�A’T�õ‚³‚ê‚鑤‚ÌKey‚ª�¸�‡�®—ñ‚³‚ê‚Ä‚¢‚é•K—v‚ª‚ ‚é�j �@Œ©‚‚©‚ê‚Î�A‚»‚̃ŒƒR�[ƒh‚Ì�u“ü‰×ŽÀ�”�v‚©‚çP—ñ‚ÌŽg—p�”‚ðŒ¸ŽZ‚µ‚Ü‚· �@�Ÿ‚ê‚ð�A�u“Š“ü•\�v‚ÌO�`P—ñ‚Ì�Ō㖘ŒJ‚è•Ô‚µ‚Ü‚· ˆÈ�ã
>�ã‚̒ljÁƒŒƒX‚ð‚¢‚½‚¾‚‘O‚É�l‚¦‚Ä‚¢‚½ƒR�[ƒh�« > > >If �u“Š“ü•\‚Ì“ü‰×Žó•t”Ô�†�v = �u�ì‹Æ—p‚Ì“ü‰×Žó•t”Ô�†�v Then > > >�@�@If �u1�s–Ú‚Ì�ÝŒÉ�”�v- �uƒZƒbƒg�”�v >= 0 Then >�@�@�@�@�ÝŒÉ�” = �u1�s–Ú‚Ì�ÝŒÉ�”�v- �uƒZƒbƒg�”�v >�@�@Else >�@�@�@�@�u“Š“ü•\‚ÌŽŸ‚Ì�s‚Ì“ü‰×Žó•t”Ô�†�v = �u�ì‹Æ—p‚ÌŽŸ‚Ì�s‚Ì“ü‰×Žó•t”Ô�†�v Then >�@�@�@�@�ÝŒÉ�” = �u2�s–Ú‚Ì�ÝŒÉ�”�v- �i�u1�s–Ú‚Ì�ÝŒÉ�”�v- �uƒZƒbƒg�”�v�j > > >�F�@�@�@�@�F�@�@�@�@�F > > >‚±‚ñ‚ÈŠ´‚¶‚Å‚µ‚傤‚©�B
‚É�A‚¢‚Ä‚Í�A‰½�ˆ‚É�‘‚ƒR�[ƒh‚©‰ð‚è‚Ü‚¹‚ñ‚ª�H �悸�A�u“Š“ü•\‚Ì“ü‰×Žó•t”Ô�†�v‚Æ�Ý‚è‚Ü‚·‚ª�AŒ»�ó‚Ì�u“Š“ü•\�v‚ł͉½�ˆ‚É‚à�u“ü‰×Žó•t”Ô�†�v”Ô�†‚Ì‹L�Ú‚ª—L‚è‚Ü‚¹‚ñ ‚Ü‚½�A�u�ÝŒÉ�” = �u1�s–Ú‚Ì�ÝŒÉ�”�v- �uƒZƒbƒg�”�v�v‚Æ�Ý‚è‚Ü‚·‚ª�A�u�ì‹Æ—p�v‚ÌList‚Í�u“ü‰×ƒ}ƒXƒ^�v‚É ’¼�ÚƒŠƒ“ƒN‚µ‚Ä‚¢‚È‚¢‚Ì‚Å�A�u�ì‹Æ—p�v‚ÌList‚ð�‘‚«Š·‚¦‚Ä‚à�u“ü‰×ƒ}ƒXƒ^�v‚É”½‰f‚µ‚Ü‚¹‚ñ ˆö‚Á‚Ä�A�u“ü‰×ƒ}ƒXƒ^�v‚©‚ç’¼�Ú’T�õ‚µ‚È‚¯‚ê‚Î�¬‚è‚Ü‚¹‚ñ�A �u“ü‰×Žó•t”Ô�†�v‚ª�u“ü‰×ƒ}ƒXƒ^�v‚̈êˆÓ‚Å�¸�‡�®—ñ‚³‚ê‚Ä‚¢‚éKey‚Å–³‚¯‚ê‚Î�A�u“ü‰×ƒ}ƒXƒ^�v‚Ì�u“ü‰×Žó•t”Ô�†�v‚ð�ã‚©‚ç�‡”Ô‚ÉŒ©‚Ä�s‚’€ŽŸ’T�õ‚Æ�¬‚è�A”ñ�í‚ÉŽžŠÔ‚ªŠ|‚©‚è‚Ü‚· ‚à‚µ�A•ʃ}ƒNƒ�‚Æ‚µ‚Ä�ã‹L‚̃R�[ƒh‚ð�ì‚邯‚µ‚½�ê�‡‚̃R�[ƒh‚à‚Ç‚«‚ð�‘‚‚ƈȉº‚Ì—l‚É�¬‚è‚Ü‚·
For i=2 to �u“Š“ü•\O�`P—ñ‚Ì�Å�I�s�v
For j = 3 to �u“ü‰×ƒ}ƒXƒ^‚Ì�Å�I�s�v
If �u“ü‰×ƒ}ƒXƒ^‚Ì“ü‰×Žó•t”Ô�†�v = �u“Š“ü•\O—ñ‚Ì“ü‰×Žó•t”Ô�†�v Then
�u“ü‰×ƒ}ƒXƒ^‚Ì“ü‰×ŽÀ�”�v = �u“ü‰×ƒ}ƒXƒ^‚Ì“ü‰×ŽÀ�”�v - �u“Š“ü•\P—ñ‚ÌŽg—p�”�v
Exit For
End If
Next j
Next i
‚Æ�¬‚è‚Ü‚·
(Bun)
> Œ³‚Ì�u“ü‰×ƒ}ƒXƒ^�v‚ª�¸�‡�®—ñ‚³‚ê‚Ä‚¢‚éˆêˆÓ�iƒ†ƒj�[ƒN�j‚Ì�€–Ú‚ª’m‚肽‚¢‚̂ł·‚ª�H >�u“ü‰×ID�v‚Ì�€–Ú‚Å‚·‚©�u“ü‰×Žó•t”Ô�†�v‚Å‚·‚©�H
�u“ü‰×ID�v‚ªƒ†ƒj�[ƒN‚©‚Â�¸�‡‚Å�®—ñ‚³‚ê‚Ä‚¢‚Ü‚·�B “ü‰×Žó•t”Ô�†‚àƒ†ƒj�[ƒN‚Å‚·‚ªˆê”Ô‚ÌŒ³‚ɂȂÁ‚Ä‚¢‚é‚͓̂ü‰×ID‚Ì•û‚Å‚·�B
>‰½�ˆ‚É�‘‚ƒR�[ƒh‚©‰ð‚è‚Ü‚¹‚ñ‚ª�H
‚·‚݂܂¹‚ñ�A•ʂ̃‚ƒWƒ…�[ƒ‹‚É�‘‚¢‚ăRƒ}ƒ“ƒhƒ{ƒ^ƒ“‚ÅŽÀ�s‚Æ‚¢‚¤Š´Šo‚Å‚µ‚½�B
“Š“ü•\‚Ì“ü‰×Žó•t”Ô�†‚̓}ƒNƒ�ŽÀ�sŒã‚É15�s–Ú�E17�s–Ú�`‚É�o‚Ä‚‚é‚̂ł»‚ê‚ðŽQ�Æ‚µ‚悤‚©‚ÆŽv‚Á‚Ä‚¢‚Ü‚µ‚½�B
��•ªŠ¨ˆá‚¢‚µ‚Ä‚½‚ñ‚Å‚·‚Ë�AŽ„�c
“Š“ü•\‚ÌO�EP—ñ‚Ƀf�[ƒ^‚ð�‘‚«‚¾‚µ‚Ä‚¢‚•û‚Å‚â‚肽‚¢‚ÆŽv‚¢‚Ü‚·�B
�i�Ⴞ‚é‚Ü�j
Ž„‚Ì•û‚Í�A�X�Vƒ}ƒNƒ�‚Ì�ì�¬‚Æ�u“Š“ü•\�v�ì�¬ƒ}ƒNƒ�‚Ì•Ï�X‚Í�o—ˆ‚Ü‚µ‚½ ‚µ‚©‚µ�AUp‚·‚鎖‚ÍŠÈ’P‚Å‚·‚ª�H �Ⴞ‚é‚Ü‚³‚ñ‚Ì•û‚à�A�¡‰ñ‚Ì�X�Vƒ}ƒNƒ�‚Ì�ì�¬‚Æ�u“Š“ü•\�v�ì�¬ƒ}ƒNƒ�‚Ì•Ï�X‚É�A‚¢‚Ä�l‚¦Œ©‚ĉº‚³‚¢ Š®‘S‚ȃR�[ƒh‚Å–³‚‚Ä‚àŒ‹�\‚Å‚·‚Ì‚Å�A�l‚¦•û‚®‚ç‚¢‚Í�‘‚¯‚é‚Å‚µ‚傤‚©‚ç�iƒR�[ƒh–³‚‚Ä‚àŒ‹�\‚Å‚·�j ‘´‚ꂪ�o‚Ä—ˆ‚½‚ç�AŽ„‚Ì•û‚àUp‚µ‚Ü‚· ‘´‚Ì•û‚ªƒ}ƒNƒ�‚ð—�‰ð�o—ˆ‚邯Žv‚¢‚Ü‚·‚Ì‚Å
(Bun)
Bun—l —¹‰ð‚¢‚½‚µ‚Ü‚µ‚½�B Šæ’£‚Á‚ăR�[ƒh�‘‚¢‚Ă݂܂·�B
‚·‚݂܂¹‚ñ�A�¡ƒeƒXƒg‚µ‚Ä‚¢‚Ä‹C‚ª‚‚¢‚½‚̂ł·‚ª�A—Ⴆ‚Î�uƒpƒ“ƒtA�v‚Æ‚¢‚¤�¤•i‚ÅŽg—pŠúŒÀ‚ª“ü‚Á‚Ä‚¢‚é‚à‚Ì‚Æ “ü‚Á‚Ä‚¢‚È‚¢‚à‚Ì‚ª�¬�Ý‚·‚é�ê�‡�A—D�æ“I‚ÉŽg—pŠúŒÀ‚ª“ü‚Á‚Ä‚¢‚é‚à‚Ì‚ª“Š“ü•\‚ÉŽg‚í‚ê‚Ü‚·�B
“ü‰×“ú�@�@Žg—pŠúŒÀ 11/1�@�@�@�@**�@�@ 11/2�@�@�@�@** 11/15�@�@�@12/2/20�@�@�©‚±‚ꂪ—D�æ“I‚ÉŽg‚í‚ê‚é 11/20�@�@�@12/3/15
“ü‰×“ú‚ÆŽg—pŠúŒÀ‚Æ—¼•û‚ðŒ©‚é‚͓̂‚¢‚Å‚µ‚傤‚©�c
�i�Ⴞ‚é‚Ü�j
•ςł·‚Ë�H ƒR�[ƒh“I‚É‚Í�A�ÝŒÉID�¸�‡‚ÌŽg—pŠúŒÀ�i”N�AŒŽ�A“ú�j�¸�‡‚Ì“ü‰×“ú�¸�‡‚ÅList‚ð�®—ñ‚µ‚Ä‚¢‚Ü‚·‚̂ŠŽg—pŠúŒÀ‚Ì”N�AŒŽ�A“ú‚ª�”’l‚Æ‚µ‚Ä“ü‚Á‚Ä‚¢‚ê‚Î
“ü‰×“ú�@�@Žg—pŠúŒÀ 11/15�@�@�@12/2/20�@�@�©‚±‚ꂪ—D�æ“I‚ÉŽg‚í‚ê‚é 11/20�@�@�@12/3/15 11/1�@�@�@�@**�@�@ 11/2�@�@�@�@**
‚±‚¤Œ¾‚¤�®—ñ�ó‘Ô‚Æ�¬‚è‚Ü‚·‚̂Ŏg—pŠúŒÀ‚Ì�Ý‚é‚à‚ªŽg‚í‚ê‚锤‚Å‚·‚©�H Ž„‚Ì•û‚̃eƒXƒgƒf�[ƒ^‚Å‚à�ã‹L‚Ì�ó‘Ô‚É�¬‚è‚Ü‚·
‚µ‚©‚µ�AŽg—pŠúŒÀ‚Ì”N�AŒŽ�A“ú‚ª•¶Žš—ñ‚Æ‚µ‚Ä“ü‚Á‚Ä‚¢‚é�ê�‡‚Í
“ü‰×“ú�@�@Žg—pŠúŒÀ 11/1�@�@�@�@**�@�@�@�@�©‚±‚ꂪ—D�æ“I‚ÉŽg‚í‚ê‚é 11/2�@�@�@�@** 11/15�@�@�@12/2/20 11/20�@�@�@12/3/15
�Ⴞ‚é‚Ü‚³‚ñ‚ÌŒ¾‚í‚ê‚é�®—ñ�ó‘Ô‚Æ�¬‚éˆ×�AŽg—pŠúŒÀ‚Ì–³‚¢•¨‚ª�æ‚ÉŽg‚í‚ê‚鎖‚Æ�¬‚è‚Ü‚· Žg—pŠúŒÀ‚Ì”N�AŒŽ�A“ú‚ª•¶Žš—ñ‚©‚ðŠm”F‚µ‚ÄŒ©‚ĉº‚³‚¢
‚à‚µ�A‚Æ‚µ‚Ä“ü‚Á‚Ä‚¢‚é‚̂ȂçˆÈ‰º‚ð•Ï�X‚µ‚ÄŒ©‚ĉº‚³‚¢ �Ÿ‚ê‚É‚·‚邯�A�u�®—ñŽž‚É�”’l‚ÆŒ©‚È‚¹‚镨‚Í‘S‚Ä�”’l‚Æ‚µ‚Ä�®—ñ‚·‚邯�¬‚è‚Ü‚·�v‚Ì‚Å Ž„‚ÌŒ¾‚¤�¸�‡‚É�¬‚邯Žv‚¢‚Ü‚·
•Ï�X‰Ó�Š‚Í�A�uPrivate Sub DataSort�v’†‚Ì
With rngTop.Parent
.Sort.SortFields.Clear
For i = 0 To UBound(vntKeys, 1)
' .Sort.SortFields.Add Key:=rngTop.Offset(, vntKeys(i)) _
' , SortOn:=xlSortOnValues, Order:=vntOrders(i) _
' , DataOption:=xlSortNormal
.Sort.SortFields.Add Key:=rngTop.Offset(, vntKeys(i)) _
, SortOn:=xlSortOnValues, Order:=vntOrders(i) _
, DataOption:=xlSortTextAsNumbers '�š•Ï�X
Next i
‚Æ�¬‚è�ADataOptionƒvƒ�ƒpƒeƒB‚ðxlSortNormal‚©‚çxlSortTextAsNumbers‚É•Ï�X‚µ‚Ü‚·
(Bun)
‚ñ�I�A�Ⴞ‚é‚Ü‚³‚ñ‚ÌŒ¾‚Á‚Ä‚¢‚éˆÓ–¡‚ðŽæ‚èˆá‚¦‚Ä‚¢‚é‚Ì‚©‚È�H
Ž„‚Æ‚µ‚Ä‚Í�AŽg—pŠúŒÀ‚Ì—L‚镨‚Ì•û‚ªŽg—pŠúŒÀ‚Ì–³‚¢•¨‚æ‚è�æ‚É�Á”ï‚·‚é‚Ì‚ª�‡“–‚Æ�l‚¦‚Ü‚·‚ª�H ”½‘΂Ȃ̂ł·‚©�H
(Bun)
‚·‚݂܂¹‚ñ�AŽg—pŠúŒÀ‚Ì�à–¾‚ª•s‘«‚µ‚Ä‚¢‚Ü‚µ‚½�B Œ»�ÝŽg—pŠúŒÀ‚Í3—ñ‚ɂ킽‚Á‚Ä‚¢‚Ü‚·‚ª‘S‚Ä�”’l‚Å“ü—Í‚³‚ê‚Ä‚¢‚Ü‚·�B �i“ü‰×Žó•t”Ô�†‚Í•¶Žš—ñ�j
‚±‚̃}ƒXƒ^�[‚Í‘½�”‚Ì�l‚ª“ü—Í‚µ‚Ä‚¢‚邽‚ß�A“¯‚¶�¤•i‚Å‚àŽg—pŠúŒÀ‚ª•¡�”‚ ‚é‚à‚Ì‚ª“¯Žž‚É“ü‚Á‚Ä‚«‚½�ê�‡�A�¡‚Ü‚Å
�EŽg—pŠúŒÀ‚ð‚±‚Ü‚ß‚É•ª‚¯‚Ä�i“¯‚¶�¤•i‚ð•¡�”�s‚ɂ킽‚Á‚Ä�j“ü—Í‚·‚é�l �EŽg—pŠúŒÀ‚ð‚܂Ƃ߂Ä�i�¤•i‚ð1�s‚ɂ܂Ƃ߂Ä�j�u**/**/**�v‚̂悤‚É“ü—Í‚·‚é�l
‚Æ‚¢‚¤‚悤‚É�A“ü—Í‹K‘¥‚ª“�ˆê‚³‚ê‚Ä‚¢‚È‚©‚Á‚½‚ñ‚Å‚·�B �¡Œã‚ÍŽg—pŠúŒÀ‚ð‚±‚Ü‚ß‚É“ü‚ê‚é•ûŒü‚Å“�ˆê‚µ‚悤‚ƂȂÁ‚Ä‚¢‚é‚̂ł·‚ª�A‚±‚ê‚܂ł̃}ƒXƒ^�[‚ª�ã‹L‚̂悤‚ɂȂÁ‚Ä‚¢‚Ü‚·‚Ì‚Å�A�o‰×‚Ì�ðŒ�‚Å‚Í
�u“ü‰×“ú‚à‚µ‚‚ÍŽg—pŠúŒÀ‚̂ǂ¿‚ç‚©‚ª‘�‚¢•û‚©‚ç�‡‚É�v
‚Æ‚¢‚¤Š´‚¶‚ɂȂè‚Ü‚·�B
‚Ȃ̂Å
“ü‰×“ú�@�@Žg—pŠúŒÀ�@Žg‚í‚ê‚é�‡”Ô 11/1�@�@�@�@**�@�@�@�@‡@�©‚±‚ꂪ—D�æ“I‚ÉŽg‚í‚ê‚é 11/2�@�@�@�@**�@�@�@�@‡A 11/15�@�@�@12/2/20�@�@‡C 11/20�@�@�@12/3/15�@�@‡D 11/21�@�@�@12/1/31�@�@‡B
‚±‚̂悤‚É‚µ‚½‚¢‚̂ł·�B
Œ¾—t‚ª‘«‚肸‚ÉŒë‰ð‚ð�µ‚«‚Ü‚µ‚Ä�\‚µ–󂲂´‚¢‚Ü‚¹‚ñ�c
�i�Ⴞ‚é‚Ü�j
’©‚©‚炸‚Á‚Æ�l‚¦‚Ă܂¸‚Í“Š“ü•\‚ÌO�EP—ñ‚É�ì‹Æ—ñ‚ð�‘‚«‚¾‚·Žd‘g‚Ý‚ð�l‚¦‚Ä‚¢‚½‚̂ł·‚ª�A
Sub Sample_3 ‚ɉº‹L‚ð’ljÁ
Dim cnt As Long�@�@�@�@�@�©’ljÁ
Dim sagyoGrp As Variant�@�©’ljÁ
“Š“ü•\‚É�ì‹Æ—ñ�iO�EP—ñ�j‚ð�ì�¬�i�sŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j�@�©’ljÁ
Set sagyoGrp = ActiveSheet.Range("O1")�@�@�@�@�@�@�@�@�©’ljÁ
'�ÝŒÉID‚ª“™‚µ‚¢‚È‚ç
If vntStockID(1, i) = vntData(j, 2) Then
'�oŒÉ�ê�Š‚Ìƒ`ƒFƒbƒN‚ªTrue‚È‚ç
If PlaceCheck(vntPlace, j, vntData) Then
'�o—Í�s‚ð�X�V
k = k + 1
'�o—Í—p”z—ñ‚ðŠg’£
ReDim Preserve vntResult(1 To k * 2)
“ü‰×ID‚ð“]‹L�@�@�@�@�@�@�@�@�@�@�@�©’ljÁ
sagyoGrp(cnt,1) = vntData(j, 0)�@ �©’ljÁ
Žg—p�”—Ê‚ð“]‹L�@�@�@�@�@�@�@�@�@�@�©’ljÁ
sagyoGrp(cnt,2) = vntData(j, 3)�@ �©’ljÁ
'“ü‰×Žó•t”Ô�†‚ð“]‹L
vntResult(k * 2 - 1) = "'" & vntData(j, 1)
'Žg—pŠúŒÀ‚ð“]‹L
vntResult(k * 2) = GetDate(vntData(j, 4), vntData(j, 5), vntData(j, 6))
'•K—v�”‚©‚ç�ÝŒÉ�”‚ðŒ¸ŽZ
lngCount = lngCount - vntData(j, 3)
End If
End If
‚Æ‚è‚ ‚¦‚¸‚±‚̂悤‚ÈŠ´‚¶‚©‚ÆŽv‚¢‚Ü‚µ‚½‚ª“–‘R‚Ì”@‚ƒGƒ‰�[�iƒCƒ“ƒfƒbƒNƒX‚ª—LŒø”͈͂ɂ ‚è‚Ü‚¹‚ñ�j‚ª�o‚Ü‚·�B
•Ï�”cnt‚ÌŽg‚¢•û‚ª‚¨‚©‚µ‚¢‚悤‚È‹C‚ª‚·‚é‚̂ł·‚ª•Ï�”‚ð‚ǂ̂悤‚ɃJƒEƒ“ƒg‚·‚ê‚΂悢‚Ì‚©‚ª•ª‚©‚炸�c
O—ñ=vntData(j, 0) �i“ü‰×ID�j P—ñ=vntData(j, 3) �iŽg—p�”—Ê�j
‚Æ‚¢‚¤�l‚¦•û‚à‚¨‚©‚µ‚¢‚Å‚µ‚傤‚©�c
�i�Ⴞ‚é‚Ü�j
1�A“]‹L‚·‚éƒR�[ƒh�‘‚ˆÊ’u‚ÍŠT‚Ë‘P‚¢‚ÆŽv‚¢‚Ü‚· �@ˆê‰ž�A‰½�ˆ‚ʼn½‚ð�s‚Á‚Ä‚¢‚é‚©—�‰ð‚µ‚Ä‚¢‚é—l‚ÅŠæ’£‚Á‚Ă܂·‚Ë 2�A•Ï�”cnt‚ÌŽg‚¢•û‚É�A‚¢‚Ä�A”z—ñ“à‚Ì�sˆÊ’u‚ð•\‚µ‚Ä‚¢‚邯Žv‚¢‚Ü‚·‚ª �@•Ï�”sagyoGrp‚ª”z—ñ‚Æ‚µ‚ÄŠm•Û‚³‚ê‚Ä‚¢‚È‚¢‚̂ŃGƒ‰�[‚É�¬‚邯Žv‚¢‚Ü‚· �@“K“–‚Ȉʒu‚Å�uReDim Preserve sagyoGrp(1 To 2, 1 To cnt)�v“™‚Æ”z—ñ‚ÌŠm•Û‚ð�s‚¢‚Ü‚· �@�®�ã‹L‚Ì�uPreserve�v‚Í”z—ñ‚Ì’†�g‚ðŽc‚µ‚Ä”z—ñ‚Ì—v‘f‚ðŠg’£‚·‚鎖‚ð•\‚µ‚Ä‚¢‚Ü‚· �@‚Ü‚½�AŠg’£‚Í�ÅŒã‚ÌŽŸŒ³(cnt)‚̈ʒu‚µ‚©‘ウ‚ç‚ê‚Ü‚¹‚ñ �@‚Å‚·‚©‚ç�A�¡‰ñ‚Ì�ê�‡�A�o—Í‚·‚é�u“ü‰×ID�v‚Ì�”‚ªŒˆ’肳‚ê‚Ä‚¢‚Ü‚¹‚ñ‚Ì‚Å�A”z—ñ‚ðŠg’£‚µ‚È‚ª‚ç �@”z—ñ‚Ì1�s–Ú‚É�u“ü‰×ID�v‚ð“]‹L�A2�s–Ú‚É�uŽg—p�”�v‚ð“]‹L‚µ�ÅŒã�o—Í‚·‚鎞‚É�s—ñ‚ð“ü‚ê‘Ö‚¦‚Ä�o—Í‚µ‚Ü‚· 3�A�uO—ñ=vntData(j, 0) �i“ü‰×ID�j�v‚É�A‚¢‚Ä‚Í�AŠm”F‚̈×�u�ì‹Æ—p�v‚É�u“ü‰×ID�v‚ð’Š�o‚µ‚Ä‚¢‚Ü‚·‚ª �@ƒf�[ƒ^‚ðŽ�‚Á‚Ä—ˆ‚é”z—ñ‚ɂ͑g“ü‚ê‚Ă͂¢‚Ü‚¹‚ñ‚Ì‚ÅvntData(j, 0)‚Í�Ý‚è‚Ü‚¹‚ñ�Aˆö‚Á‚ăGƒ‰�[‚Æ�¬‚è‚Ü‚· �@�¡‰ñ‚Ì�C�³‚Å‚Í�Aˆø�”‚ð’ljÁ‚µ‚ĕʂ̔z—ñ‚Æ‚µ‚Ď擾‚µ‚Ä‚¢‚Ü‚·
�¡‰ñ‚̒ljÁ•Ï�X‚Å‚±‚Ì•Ï�”–¼‚ðŽg‚Á‚Ä‚¢‚Ü‚·‚̂Ŋm”F‚µ‚ĉº‚³‚¢ ‚Ü‚½�AŽg—p�‡‚ÌŒ�‚Å‚·‚ª�A�®—ñ‚·‚é‘O‚É•¶Žš—ñ‚ɕϊ·‚µ‚Ä�®—ñ‚ð�s‚¤—l‚É‚µ‰ðŒˆ�o—ˆ‚邯Žv‚¢‚Ü‚·
�u“Š“ü•\�v�ì�¬ƒ}ƒNƒ�‚Ì•Ï�X‚É�A‚¢‚Ä‘S•¶‚ð�Ú‚¹‚é–ó‚É‚Í�s‚©‚È‚¢‚Ì‚Å�V‹K‚̃}ƒNƒ�ˆÈŠO‚Í •Ï�X’ljÁ•”‚Ì‚Ý�Ú‚¹‚Ü‚·(�šˆó) ‘OŒãŠÖŒW‚ð‘P‚Œ©‚ĒljÁ•Ï�X‚µ‚ĉº‚³‚¢�iŽg—p�‡‚ÌŒ�‚à‘g‚Ý“ü‚ê‚Ä�Ý‚è‚Ü‚·�j
�¡‚܂łÌ�uPublic Sub Sample_3()�v‚ðSubƒ‹�[ƒeƒBƒ“ƒvƒ�ƒV�[ƒWƒƒ‚©‚çˆø�”‚ðŽ�‚Á‚½Functionƒvƒ�ƒV�[ƒWƒƒ‚É•Ï�X‚µ‚Ü‚·
�uPublic Sub Sample_3()�v‚ð�uPrivate Function DrawUp(wksShip As Worksheet) As Boolean�v‚É•Ï�X �uEnd Sub�v‚ð�uEnd Function�v‚É•Ï�X�iŽ©“®“I‚É�s‚í‚ê‚é‚©‚à�H�j •Ï�X‚µ‚½�uPrivate Function DrawUp(wksShip As Worksheet) As Boolean�v‚Ì’†�g‚̒ljÁ•Ï�X•”�i�šˆó�j
Dim vntStockID As Variant
Dim vntResult As Variant
Dim lngMax As Long
Dim rngSearch As Range '�š’ljÁ
Dim vntSearch As Variant '�š’ljÁ
Dim strForm As String '�š’ljÁ
Dim blnLack As Boolean '�š’ljÁ
Dim cnt As Long '�š’ljÁ
Dim sagyoGrp() As Variant '�š’ljÁ
Dim strProm As String
'�ì‹Æ—pƒV�[ƒg‚Ì’Š�o”͈͂Ì�擪ƒZƒ‹ˆÊ’u(ƒ}ƒXƒ^‚©‚ç•K—vƒf�[ƒ^‚ð’Š�o)
Set rngWork = Worksheets("�ì‹Æ—p").Range("A1")
'�š�u“Š“ü•\�v‚É�‘‚«�ž‚Þ�u“ü‰×ƒ}ƒXƒ^�v‚Ì’T�õKey‚ÌŠî�€�擪ƒZƒ‹ˆÊ’u
Set rngSearch = rngResult.Parent.Range("O1") '�š’ljÁ
'‰æ–Ê�X�V‚ð’âŽ~
Application.ScreenUpdating = False
With rngSearch '�š’ljÁ
'�u“ü‰×ƒ}ƒXƒ^�v�X�Vƒf�[ƒ^‚Ì�s�”‚̎擾
lngRows = .Offset(Rows.Count - .Row).End(xlUp).Row - .Row '�š’ljÁ
'�X�Vƒf�[ƒ^‚Ì�Á‹Ž
If lngRows > 0 Then '�š’ljÁ
If MsgBox("‘O‰ñ‚Ì�X�V‚ª�s‚í‚ê‚Ä‚¢‚Ü‚¹‚ñ�A‚±‚̂܂܎À�s‚µ‚Ü‚·‚©�H", _
vbInformation + vbYesNo + vbDefaultButton2) = vbYes Then '�š’ljÁ
.Offset(1).Resize(lngRows, 2).ClearContents '�š’ljÁ
Else '�š’ljÁ
'�¦ƒf�[ƒ^�X�V‚ª�s‚í‚ê‚Ä‚¢‚È‚¢�ê�‡�A–ß‚è’l‚ðTrue‚É
DrawUp = True '�š’ljÁ
strProm = "ƒ}ƒXƒ^‚̃f�[ƒ^�X�V‚ð�s‚Á‚ĉº‚³‚¢" '�š’ljÁ
GoTo Wayout '�š’ljÁ
End If '�š’ljÁ
End If '�š’ljÁ
End With '�š’ljÁ
'“Š“ü•\‚É�A‚¢‚Ä
With rngResult
'“ü‰×ƒ}ƒXƒ^�[‚©‚ç•K—vƒf�[ƒ^‚ðŽæ“¾
' If Not GetData(vntData, rngList, rngWork, vntStockID) Then
If Not GetData(vntData, rngList, rngWork, vntStockID, vntSearch) Then '�š•Ï�X
strProm = "ƒf�[ƒ^‚̎擾‚ª�o—ˆ‚Ü‚¹‚ñ�A�ÝŒÉID�A�oŒÉ�ê�Š“™‚ðŠm”F‚µ‚ĉº‚³‚¢"
GoTo Wayout
End If
'ƒZƒ‹�‘Ž®‚ðŽæ“¾
strForm = rngWork.Offset(1).NumberFormat '�š’ljÁ
'“ü‰×Žó•t”Ô�†‚ð“]‹L
vntResult(k * 2 - 1) = "'" & vntData(j, 1)
'Žg—pŠúŒÀ‚ð“]‹L
vntResult(k * 2) = GetDate(vntData(j, 4), vntData(j, 5), vntData(j, 6))
'�š�X�V—pƒf�[ƒ^‚Ì“]‹LˆÊ’u‚ð�X�V
cnt = cnt + 1 '�š’ljÁ
'�š�X�V—pƒf�[ƒ^‚ðŠi”[‚·‚é”z—ñ‚ðŠg’£
ReDim Preserve sagyoGrp(1 To 2, 1 To cnt)
'�š�X�V—pƒf�[ƒ^”z—ñ‚É�u“ü‰×ID�v‚ð“]‹L
sagyoGrp(1, cnt) = vntSearch(j, 1)
If lngCount - vntData(j, 3) >= 0 Then '�š’ljÁ
'�š•K—v�”‚æ‚è�݌ɂª�‚È‚¢‚©“¯‚¶�ê�‡
sagyoGrp(2, cnt) = vntData(j, 3) '�š’ljÁ
Else '�š’ljÁ
'�š•K—v�”‚æ‚è�݌ɂª‘½‚¢�ê�‡
sagyoGrp(2, cnt) = lngCount
End If '�š’ljÁ
'•K—v�”‚©‚ç�ÝŒÉ�”‚ðŒ¸ŽZ
lngCount = lngCount - vntData(j, 3)
End If
'Œ‹‰Ê‚ð�o—Í
rngResult.Offset(1, i).Resize(UBound(vntResult)).Value _
= WorksheetFunction.Transpose(vntResult)
'•s‘«‚Ì�ê�‡‚Ì�ˆ—�
If InStr(1, vntResult(k * 2 - 1), "–‡•s‘«") Then
rngResult.Offset(k * 2 - 1, i).Font.Color = vbRed
blnLack = True '�š’ljÁ
End If
'�o—Í‚Ì�Å‘å�s�”‚ð•Û‘¶
If lngMax < k Then
'“ü‰×“ú�AŽg—pŠúŒÀ‚ð�‘‚«�ž‚Þ
ReDim vntResult(1 To 2, 1 To 1)
vntResult(1, 1) = "“ü‰×“ú"
vntResult(2, 1) = "Žg—pŠúŒÀ"
For i = 0 To lngMax - 1
rngResult.Offset(i * 2 + 1).Resize(2).Value = vntResult
Next i
With rngSearch.Offset(1) '�š’ljÁ
'�š1—ñ–ڂ̃Zƒ‹�‘Ž®‚ð’Š�o‚³‚ꂽ—ñ“¯‚¶‚É�Ý’è
.Resize(cnt).NumberFormat = strForm '�š’ljÁ
'�šO�`P—ñ�o—Í(”z—ñ‚Ì�s—ñ‚ð“ü‚ê‘Ö‚¦‚Ä)
.Resize(cnt, 2).Value = WorksheetFunction.Transpose(sagyoGrp) '�š’ljÁ
End With '�š’ljÁ
'�݌ɕs‘«‚ª�¶‚¶‚Ä‚¢‚é‚È‚ç
If blnLack Then '�š’ljÁ
strProm = "�݌ɕs‘«‚ª�o‚Ä‚¢‚Ü‚·‚Ì‚Å�X�Vƒf�[ƒ^�Á‹Ž‚³‚ê‚Ü‚µ‚½" '�š’ljÁ
rngSearch.Offset(1).Resize(cnt, 2).ClearContents '�š’ljÁ
Else '�š’ljÁ
strProm = "�ˆ—�‚ªŠ®—¹‚µ‚Ü‚µ‚½"
'�¦ƒf�[ƒ^�X�V‚ª�s‚í‚ê‚Ä‚¢‚È‚¢�ê�‡�A–ß‚è’l‚ðTrue‚É
DrawUp = True '�š’ljÁ
End If '�š’ljÁ
Wayout:
Set rngResult = Nothing
Set rngWork = Nothing
Set rngSearch = Nothing '�š’ljÁ
ˆÈ�ã
ŽŸ‚É�AˆÈ‰º‚̃vƒ�ƒV�[ƒWƒƒ‚Ɉø�”’ljÁ
Private Function GetData(vntData As Variant, rngList As Range, _
rngWork As Range, vntStockID As Variant) As Boolean
‚ð
Private Function GetData(vntData As Variant, rngList As Range, _
rngWork As Range, vntStockID As Variant, vntSearch As Variant) As Boolean '�š•Ï�X
‚Æ�uvntSearch As Variant�v‚ÆŒ¾‚¤ˆø�”‚ð’ljÁ‚µ‚Ü‚· ‚±‚̈ø�”‚ª�u�ì‹Æ—p�v‚©‚ç�u“ü‰×ID�v‚ðŽæ“¾‚µ‚Ä—ˆ‚Ü‚·
‚»‚Ì’†‚Ì�šˆó‚ð•Ï�X’ljÁ
'�ì‹Æ—pƒV�[ƒg‚É�A‚¢‚Ä
With rngWork
'�s�”‚̎擾
lngRows = .Offset(Rows.Count - .Row).End(xlUp).Row - .Row
If lngRows <= 0 Then
GoTo Wayout
End If
'�šŽg—pŠúŒÀ�i”N�AŒŽ�A“ú�j‚ð•¶Žš—ñ‚É•Ï�X
vntDate = .Offset(1, 4).Resize(lngRows, 3).Value '�š’ljÁ
For i = 1 To lngRows '�š’ljÁ
For j = 1 To 3 '�š’ljÁ
If IsNumeric(vntDate(i, j)) Then '�š’ljÁ
vntDate(i, j) = Right("00" & vntDate(i, j), 2) '�š’ljÁ
End If '�š’ljÁ
Next j '�š’ljÁ
Next i '�š’ljÁ
'�šƒZƒ‹�‘Ž®‚ð•¶Žš—ñ‚É•Ï�X
.Offset(1, 4).Resize(lngRows, 3).NumberFormat = "@" '�š’ljÁ
'�š•¶Žš—ñ‚É‚µ‚½Žg—pŠúŒÀ�i”N�AŒŽ�A“ú�j‚ðƒV�[ƒg�o—Í
.Offset(1, 4).Resize(lngRows, 3).Value = vntDate '�š’ljÁ
'�ÝŒÉID�‡‚ÌŽg—pŠúŒÀ�i”N�AŒŽ�A“ú�j�‡‚Ì“ü‰×“ú�‡‚ÅList‚ð�®—ñ
'A—ñ‚©‚ç�®—ñ‚·‚é—ñ‚Ì—ñOffset‚ðŽw’è,‘S‚Ä�¸�‡‚Å
DataSort .Offset(1).Resize(lngRows, 11), Array(2, 4, 5, 6, 1), _
Array(xlAscending, xlAscending, xlAscending, _
xlAscending, xlAscending)
'‘S—ñƒf�[ƒ^‚ð”z—ñ‚Ɏ擾
vntData = .Offset(1, 1).Resize(lngRows + 1, 10).Value
'�š”z—ñ‚É�u“ü‰×ID�v‚ðŽæ“¾
vntSearch = .Offset(1).Resize(lngRows + 1).Value '�š’ljÁ
End With
ˆÈ�ã
ˆÈ‰º�A�V‹Kƒ}ƒNƒ� ŽŸ‚É�uPrivate Function DrawUp(wksShip As Worksheet) As Boolean�v‚ðŒÄ‚Ñ�o‚·ƒvƒ�ƒV�[ƒWƒƒ‚ð’ljÁ “¯‚¶•W�€ƒ‚ƒWƒ…�[ƒ‹‚É‹L�q
Public Sub Main()
' �u“Š“ü•\�v�ì�¬ƒ}ƒNƒ�
Dim wksObject As Worksheet
'�ì•\‚·‚é�u“Š“ü•\�vƒV�[ƒg‚ð�Ý’è
Set wksObject = ActiveSheet
'�u“Š“ü•\�v‚ð�ì�¬‚µ‚ă}ƒXƒ^�X�V‚ª�s‚í‚ê‚Ä‚¢‚È‚¢�ê�‡
If DrawUp(wksObject) Then
'�X�Vƒ}ƒNƒ�‚ðŒÄ‚Ñ�o‚·
DataUpDate wksObject
End If
Set wksObject = Nothing
End Sub
ˆÈ�ã ŽŸ‚É�Aƒ}ƒXƒ^�X�Vƒ}ƒNƒ�‚ð�ì�¬ “¯‚¶•W�€ƒ‚ƒWƒ…�[ƒ‹‚É‹L�q
Public Sub MasterUpDate()
' ƒ}ƒXƒ^�X�Vƒ}ƒNƒ�
DataUpDate ActiveSheet
End Sub
Private Sub DataUpDate(wksShip As Worksheet)
'�u“ü‰×ƒ}ƒXƒ^�v‚Ì’T�õKey‚Æ�¬‚é—ñ�iŠî�€ƒZƒ‹‚©‚ç‚Ì—ñOffset:A—ñ�j
Const clngKey As Long = 0
'�u“ü‰×ƒ}ƒXƒ^�v‚Ì�X�V‚·‚é—ñ�iŠî�€ƒZƒ‹‚©‚ç‚Ì—ñOffset:Q—ñ�j
Const clngItem As Long = 16
Dim i As Long
Dim lngFound As Long
Dim lngRows As Long
Dim rngList As Range
Dim rngResult As Range
Dim vntData As Variant
Dim vntValue As Variant
Dim strProm As String
'List‚Ì�擪ƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�擪—ñ‚Ì—ñŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
Set rngList = wksShip.Range("O1")
'Œ‹‰Ê�o—Í‚Ì�擪ƒZƒ‹ˆÊ’u‚ðŠî�€‚Æ‚·‚é�i�擪—ñ‚Ì—ñŒ©�o‚µ‚̃Zƒ‹ˆÊ’u�j
Set rngResult = Worksheets("“ü‰×ƒ}ƒXƒ^�[").Range("A3")
With rngList
'�s�”‚̎擾
lngRows = .Offset(Rows.Count - .Row).End(xlUp).Row - .Row
If lngRows <= 0 Then
strProm = .Parent.Name & " ‚Í�X�V�ς݂ł·"
GoTo Wayout
End If
'O�`P—ñƒf�[ƒ^‚ð”z—ñ‚Ɏ擾
vntData = .Offset(1).Resize(lngRows, 2).Value
End With
'“ü‰×ƒ}ƒXƒ^‚Ì�X�VŠm”F
If MsgBox("“ü‰×ƒ}ƒXƒ^‚Ì�X�V‚ð�s‚¢‚Ü‚·�A�X�V‚ð�s‚¤‚ÆŒ³‚ɂ͖߂¹‚Ü‚¹‚ñ", _
vbInformation + vbOKCancel + vbDefaultButton2) = vbCancel Then
strProm = "ƒ}ƒXƒ^�X�V‚ð�s‚킸‚É�I—¹‚µ‚Ü‚µ‚½"
GoTo Wayout
End If
'‰æ–Ê�X�V‚ð’âŽ~
Application.ScreenUpdating = False
With rngResult
'�s�”‚̎擾
lngRows = .Offset(Rows.Count - .Row, clngKey).End(xlUp).Row - .Row
If lngRows <= 0 Then
strProm = .Parent.Name & "�@‚Ƀf�[ƒ^�s‚ª—L‚è‚Ü‚¹‚ñ"
GoTo Wayout
End If
'”O‚̈×�A�u“ü‰×ƒ}ƒXƒ^�v‚ðA—ñ‚ðKey‚Æ‚µ‚Ä�¸�‡�®—ñ
DataSort Intersect(.CurrentRegion, .CurrentRegion.Offset(1)), Array(0), Array(xlAscending)
End With
'O—ñ‚É�A‚¢‚Ä�Å�I�s‚܂ŌJ‚è•Ô‚µ
For i = 1 To UBound(vntData, 1)
'�¦�u“ü‰×ƒ}ƒXƒ^�v‚ÌA—ñ‚É�u“Š“ü•\�v‚ÌO—ñ‚ª—L‚é‚©’T�õ(A—ñ‚ª•¶Žš—ñ‚Ì�ê�‡�j
lngFound = RowSearch(vntData(i, 1), rngResult.Offset(1, clngKey).Resize(lngRows))
'�¦�u“ü‰×ƒ}ƒXƒ^�v‚ÌA—ñ‚É�u“Š“ü•\�v‚ÌO—ñ‚ª—L‚é‚©’T�õ(A—ñ‚ª�”’l‚Ì�ê�‡�j
' lngFound = RowSearch(CLng(vntData(i, 1)), rngResult.Offset(1, clngKey).Resize(lngRows))
'’T�õ‚ªŽ¸”s‚µ‚½�ê�‡�AlngFound‚É0‚ª‹A‚é
If lngFound > 0 Then
'ƒf�[ƒ^‚ð�X�V
vntValue = rngResult.Offset(lngFound, clngItem).Value
rngResult.Offset(lngFound, clngItem).Value = vntValue - vntData(i, 2)
End If
Next i
'�X�Vƒf�[ƒ^‚ð�Á‹Ž
With rngList
.Offset(1).Resize(UBound(vntData, 1), 2).ClearContents
End With
With rngResult
.Parent.Parent.Activate
.Parent.Activate
.Activate
End With
strProm = "ƒ}ƒXƒ^�X�V�ˆ—�‚ªŠ®—¹‚µ‚Ü‚µ‚½"
Wayout:
'‰æ–Ê�X�V‚ð�ÄŠJ
Application.ScreenUpdating = True
Set rngList = Nothing
Set rngResult = Nothing
MsgBox strProm, vbInformation
End Sub
Private Function RowSearch(vntKey As Variant, _
rngScope As Range, _
Optional lngOver As Long) As Long
Dim vntFind As Variant
'Match‚É‚æ‚é“ñ•ª’T�õ
vntFind = Application.Match(vntKey, rngScope, 1)
'‚à‚µ�AƒGƒ‰�[‚Å–³‚¢‚È‚ç
If Not IsError(vntFind) Then
'‚à‚µ�AKey’l‚Æ’T�õˆÊ’u‚Ì’l‚ª“™‚µ‚¢‚È‚ç
If vntKey = rngScope(vntFind).Value Then
'–ß‚è’l‚Æ‚µ‚Ä�A�sˆÊ’u‚ð‘ã“ü
RowSearch = vntFind
End If
'Key’l‚ð’´‚¦‚é�Å�¬’l‚Ì‚ ‚é�s
lngOver = vntFind + 1
Else
lngOver = 1
End If
End Function
ˆÈ�ã
‘´�X‚ÌŽÀ�s‚Í�A�uSub Main�v‚Æ�uSub MasterUpDate�v‚Å�s‚¢‚Ü‚· �®�A�u“ü‰×ƒ}ƒXƒ^�v‚ÌA—ñ�i“ü‰×ID�j‚ª•¶Žš—ñ‚Ì�ê�‡‚Æ�”’l‚Ì�ê�‡‚Å�uSub DataUpDate�v‚Ì’†‚Ì
'�¦�u“ü‰×ƒ}ƒXƒ^�v‚ÌA—ñ‚É�u“Š“ü•\�v‚ÌO—ñ‚ª—L‚é‚©’T�õ(A—ñ‚ª•¶Žš—ñ‚Ì�ê�‡�j
lngFound = RowSearch(vntData(i, 1), rngResult.Offset(1, clngKey).Resize(lngRows))
'�¦�u“ü‰×ƒ}ƒXƒ^�v‚ÌA—ñ‚É�u“Š“ü•\�v‚ÌO—ñ‚ª—L‚é‚©’T�õ(A—ñ‚ª�”’l‚Ì�ê�‡�j
lngFound = RowSearch(CLng(vntData(i, 1)), rngResult.Offset(1, clngKey).Resize(lngRows))
‚ªˆá‚¤‚̂ŋC‚ð•t‚¯‚ĉº‚³‚¢
�®�A‘S•”‚̒ljÁ•Ï�X‚ª�I‚í‚Á‚½‚ç�AVBE‚Ì�uƒfƒoƒbƒO�v�¨�uVBAProject‚̃Rƒ“ƒpƒCƒ‹�v‚ð�s‚¢ ƒGƒ‰�[‚ª�o‚½‚ç�A‚à‚¤ˆê“xŠm”F‚µ�C�³�A �Ä“x�uVBAProject‚̃Rƒ“ƒpƒCƒ‹�v‚ð�s‚¢ƒGƒ‰�[‚ª�o‚È‚‚È‚é‚Ü‚Å�Ÿ‚ê‚ðŒJ‚è•Ô‚µ‚ĉº‚³‚¢ ŽŸ‚É�AƒeƒXƒg‚É�Û‚µƒ}ƒXƒ^“™‚̃oƒbƒNƒAƒbƒv‚ð•K‚¸Žæ‚Á‚Ä‚©‚çƒeƒXƒg‚µ‚ĉº‚³‚¢
(Bun)
�‘‚«–Y‚ê‚Ü‚µ‚½ �uPrivate Sub DataSort�v’†‚̂Š�uDataOption:=xlSortTextAsNumbers '�š•Ï�X�v‚Æ‚µ‚ĉº‚³‚¢‚ÆŒ¾‚¢‚Ü‚µ‚½‚ª �uDataOption:=xlSortNormal�v‚É–ß‚µ‚Ä’u‚¢‚ĉº‚³‚¢ –ß‚³‚È‚¢‚Æ�AŒ‹‰Ê‚͈ȑO‚ƕςí‚ç‚È‚�¬‚è‚Ü‚·
(Bun)
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
ƒR�[ƒh‚ð’ljÁ•Ï�X‚µ‚ăRƒ“ƒpƒCƒ‹‚ð�s‚Á‚Ă݂܂µ‚½‚ª�A
DrawUp = True
‚̂Ƃ±‚ë‘S‚Ä‚Å�u”z—ñ‚ɂ͊„‚è“–‚Ä‚ç‚ê‚Ü‚¹‚ñ�v‚Æ‚¢‚¤ƒGƒ‰�[‚ª�o‚Ü‚·�B
ŒŸ�õ‚µ‚Ă݂½‚Æ‚±‚ë�A—Ⴆ‚Î
�@�@Dim test() As String
‚Æ‚·‚ׂ«‚Æ‚±‚ë‚ð
�@�@Dim test(10) As String
‚̂悤‚É‚µ‚Ä‚¢‚é�ê�‡‚É�o‚é�A‚Æ‚¢‚¤‚±‚Æ‚ª�‘‚¢‚Ä‚ ‚Á‚½‚Ì‚Å�A
DrawUp(wksShip As Worksheet) As Boolean()
‚±‚ê‚ð
Private Function DrawUp() As Boolean()
Dim wksShip As Worksheet
‚±‚̂悤‚É•ªŠ„‚µ‚Ă݂܂µ‚½‚ª‚â‚Í‚è�u”z—ñ‚É‚Í�`�v‚̃Gƒ‰�[‚ɂȂè‚Ü‚·�B
Boolean ‚Ì•”•ª‚ð•Ï‚¦‚Ä‚à“¯‚¶ƒGƒ‰�[‚Å‚µ‚½�B
‚Æ‚è‚ ‚¦‚¸
DrawUp = True
‚ð‘S‚ăRƒ�ƒ“ƒgƒuƒ�ƒbƒN‚É‚µ‚Ä�Ä“xƒRƒ“ƒpƒCƒ‹‚Å
Private Function GetData(vntData As Variant, rngList As Range, _
rngWork As Range, vntStockID As Variant, vntSearch As Variant) As Boolean
‚Å�uvntDate�v‚ª’è‹`‚³‚ê‚Ä‚¢‚È‚¢‚̃Gƒ‰�[‚ª�o‚½‚Ì‚Å
Dim vntDate As Variant
‚ð’ljÁ‚µ‚Ü‚µ‚½�B
‚·‚邯�¡“x‚Í Public Sub Main() �@�@If DrawUp(wksObject) Then ‚±‚ê‚Ì�uDrawUp�v‚Å�uŒ^‚ªˆê’v‚µ‚Ü‚¹‚ñ�v‚̃Rƒ“ƒpƒCƒ‹ƒGƒ‰�[‚ª�o‚Ü‚·�B ‚±‚±‚ð‚Æ‚è‚ ‚¦‚¸ Dim DrawUp As Variant�@‚Æ‚µ‚Ă݂܂µ‚½�B
‚»‚±‚Å�uVBAProject‚̃Rƒ“ƒpƒCƒ‹�v‚ªƒOƒŒ�[ƒAƒEƒg‚ɂȂÁ‚½‚̂ŎÀ�s‚µ‚Ă݂½‚Æ‚±‚ë�iDrawUp = True ‚̓Rƒ�ƒ“ƒgƒuƒ�ƒbƒN‚̂܂Ü�j ‚â‚Í‚è�@If DrawUp(wksObject) Then�@‚Å�uŒ^‚ªˆê’v‚µ‚Ü‚¹‚ñ�v‚̃Gƒ‰�[‚ɂȂè‚Ü‚·�B
‚±‚±‚ÌIFƒXƒe�[ƒgƒ�ƒ“ƒg‚łǂ¤‚µ‚Ä‚àŽ~‚Ü‚é‚Ì‚Å�æ‚É�i‚߂܂¹‚ñ�c
DrawUp ‚Ì2‚‚̃Gƒ‰�[‚ɂ‚¢‚ăqƒ“ƒg‚Å‚¢‚¢‚̂ł¨‹³‚¦‚‚¾‚³‚¢�c
�i�Ⴞ‚é‚Ü�j
>ƒR�[ƒh‚ð’ljÁ•Ï�X‚µ‚ăRƒ“ƒpƒCƒ‹‚ð�s‚Á‚Ă݂܂µ‚½‚ª�A > > > DrawUp = True > > >‚̂Ƃ±‚ë‘S‚Ä‚Å�u”z—ñ‚ɂ͊„‚è“–‚Ä‚ç‚ê‚Ü‚¹‚ñ�v‚Æ‚¢‚¤ƒGƒ‰�[‚ª�o‚Ü‚·�B
‚±‚Ì�uDrawUp�v‚ĉ½‚©‰ð‚è‚Ü‚·‚©�H
�uPublic Sub Sample_3()�v‚ð�uPrivate Function DrawUp(wksShip As Worksheet) As Boolean�v‚É•Ï�X
‚µ‚Ä�Ý‚è‚Ü‚· ‚±‚±‚Å‚µ‚½‚¢Ž–‚Í�A�uPublic Sub Sample_3()�v‚ÆŒ¾‚¤ƒOƒ��[ƒoƒ‹�i‚ǂ̃‚ƒWƒ…�[ƒ‹‚©‚ç‚àŽQ�Ɖ”\�j‚Å ˆø�”‚ðŽ�‚½‚È‚¢Subƒvƒ�ƒV�[ƒWƒƒ‚ð�uPrivate Function DrawUp(wksShip As Worksheet) As Boolean�v‚ÆŒ¾‚¤ ƒ‚ƒWƒ…�[ƒ‹ƒŒƒxƒ‹�i�Ÿ‚ꂪ�‘‚©‚ê‚Ä‚¢‚郂ƒWƒ…�[ƒ‹‚©‚炾‚¯ŽQ�Ɖ”\�j‚ňø�”‚ðŽ�‚Á‚½Functionƒvƒ�ƒV�[ƒWƒƒ‚É ƒvƒ�ƒV�[ƒWƒƒ–¼‚ð•Ï�X‚µ‚ĉº‚³‚¢‚ÆŒ¾‚¤Ž–‚Å‚· Functionƒvƒ�ƒV�[ƒWƒƒ‚Í–ß‚è’l‚ÆŒ¾‚¤•¨‚ðŒÄ‚Ñ�o‚µŒ³‚ɕԂµ‚Ü‚·�A—Ⴆ‚΃��[ƒNƒV�[ƒgŠÖ�”‚ÌSUMŠÖ�”‚Æ“¯‚¶‚Å‚· ‚±‚Ì�ê�‡�A=SUM(B1:D1)‚Æ�‘‚©‚ê‚Ü‚·‚ªŠ‡ŒÊ‚Ì’†‚ÌB1:D1‚ªˆø�”‚Å‚±‚Ì�”Ž®‚ª�‘‚©‚ê‚Ä‚¢‚éƒZƒ‹‚É‹A‚Á‚Ä‚‚é B1+C+D1‚ÌŒ‹‰Ê‚ª–ß‚è’l‚Æ�¬‚è‚Ü‚· ‹l‚Ü‚è�A�uPrivate Function DrawUp(wksShip As Worksheet) As Boolean�v‚Í�ADrawUpŠÖ�”‚͈ø�”‚É ƒ��[ƒNƒV�[ƒgŒ^‚Ì•Ï�”wksShip‚ðŽ�‚¿�ABooleanŒ^‚Ì–ß‚è’l‚ð•Ô‚µ‚Ü‚· ˆø�”wksShip‚Ƀ��[ƒNƒV�[ƒgŽ�‚½‚¹�Ÿ‚ê‚ðŒÄ‚Ñ�o‚·‚Æ“à•”‚Å‚Í�A�F�X‚È�ˆ—�‚ð�s‚¢Œ‹‰Ê‚Æ‚µ‚ÄŠÖ�”–¼DrawUp‚É TrueŽá‚µ‚‚ÍFalse‚ð–ß‚è’l‚Æ‚µ‚ĕԂµ‚Ü‚· ‚±‚Ì–ß‚è’l‚ð•Ô‚·‘€�삪�uDrawUp = True�v‚Å‚· �Ÿ�ˆ‚Å�A�u”z—ñ‚ɂ͊„‚è“–‚Ä‚ç‚ê‚Ü‚¹‚ñ�v‚Æ�o‚Ä‚‚é‚Ì‚Í�AFunction‚Ì’è‹`‚Å–ß‚è’l‚ÌŒ^‚ðŽw’肵‚Ä‚¢‚é �u) As Boolean�v‚ªˆá‚Á‚Ä‚¢‚é‚Ì‚ªŒ´ˆö‚¾‚ÆŽv‚¢‚Ü‚·
>DrawUp(wksShip As Worksheet) As Boolean() >‚±‚ê‚ð
‚Æ�‘‚¢‚Ä—L‚è‚Ü‚·‚ªˆø�”‚ÌŒ^Žw’è�u) As Boolean�v‚ÌŒã‚ë‚É�u()�v‚ª—L‚è‚Ü‚·‚ª�Ÿ‚ê‚ð•t‚¯‚邯 –ß‚è’l‚ªBooleanŒ^‚Ì”z—ñ‚Æ�¬‚Á‚Ä‚µ‚Ü‚¢‚Ü‚·�Aˆö‚Á‚Ä–ß‚è’l‚É”z—ñ‚ðŽw’肵‚È‚‚Ă͂Ȃç‚È‚¢‚Ì‚É ‚½‚¾‚ÌƒŠƒeƒ‰ƒ‹’è�”‚µ‚½ˆ×�u”z—ñ‚ɂ͊„‚è“–‚Ä‚ç‚ê‚Ü‚¹‚ñ�v‚Æ�o‚Ä‚¢‚é‚̂łµ‚傤 ‚±‚Ì�u) As Boolean()�v‚ÌŒã‚ë‚Ì�u()�v‚Í•K—v�Ý‚è‚Ü‚¹‚ñ�A�‘‚«•Ï‚¦‚ÌŽwަ‚ɂ͓ü‚Á‚Ä‚¢‚Ü‚¹‚ñ‚ª�H Œã‚ë‚Ì�u()�v�í�œ‚µ�A�‘‚«Š·‚¦‚ÌŽwަ’Ê‚è‚É‚µ‚ĉº‚³‚¢�A
2�A >Private Function GetData(vntData As Variant, rngList As Range, _ > rngWork As Range, vntStockID As Variant, vntSearch As Variant) As Boolean > >‚Å�uvntDate�v‚ª’è‹`‚³‚ê‚Ä‚¢‚È‚¢‚̃Gƒ‰�[‚ª�o‚½‚̂Š> Dim vntDate As Variant >‚ð’ljÁ‚µ‚Ü‚µ‚½�B
ƒSƒ�ƒ“�Ÿ‚ê‚ÍŽ„‚̃~ƒX‚Å‚·�AŒ¾‚¢–ó‚ðŒ¾‚í‚µ‚Ä‚¢‚½‚¾‚¯‚ê‚Î�A�®—ñ�‡‚ÌŒ�‚Ì�C�³‚Å�uDim vntDate As Variant�v ‚̈ê�s‚ð“ü‚ꂽ‚̂ł·‚ª�A�Ÿ‚ê‚ð’ljÁŽwަ‚É“ü‚ê–Y‚ê‚Ü‚µ‚½ ‹Â‚¹‚ÌŽæ‚è�uFunction GetData�v‚Ì•Ï�”�錾•”‚ɒljÁ‚µ‚Ä’¸‚¯‚ê‚ÎŒ‹�\‚Å‚·
3�A >‚·‚邯�¡“x‚Í >Public Sub Main() >�@�@If DrawUp(wksObject) Then >‚±‚ê‚Ì�uDrawUp�v‚Å�uŒ^‚ªˆê’v‚µ‚Ü‚¹‚ñ�v‚̃Rƒ“ƒpƒCƒ‹ƒGƒ‰�[‚ª�o‚Ü‚·�B >‚±‚±‚ð‚Æ‚è‚ ‚¦‚¸ Dim DrawUp As Variant�@‚Æ‚µ‚Ă݂܂µ‚½�B
�Ÿ‚ê‚à�u1�A�v‚É‹Nˆö‚µ‚Ü‚·�ADrawUp‚Ì–ß‚è’l‚ª‚½‚¾‚ÌBoolean’l�iTrue�AFalse‚ÌŽ–�j‚¾‚©‚炱‚Ì—l‚È�‘‚«•û‚ð‚·‚é‚Ì‚É
>DrawUp(wksShip As Worksheet) As Boolean()
‚Æ�¬‚Á‚Ä‚¢‚é‚Ì‚Å�AƒRƒ“ƒpƒCƒ‰—l‚Í�u”z—ñ‚ª–ß‚Á‚Ä—ˆ‚é‚̂ɉ½‚Å‚±‚ñ‚È�‘‚«•û‚µ‚Ä‚é‚Ì‚æ�v‚Á‚Ä“{‚Á‚ăCƒ‰ƒVƒƒƒ‹‚̂ł·
“e‚ÉŠp�A�uPrivate Function DrawUp(wksShip As Worksheet) As Boolean�v‚Æ‚µ‚Ä�A �uDim vntDate As Variant�@ ‚ð’ljÁ‚µ‚Ü‚µ‚½�B�vˆÈŠO‚ÌŽwަŠO‚Ì•Ï�X‚ð–ß‚µ‚ĉº‚³‚¢
(Bun)
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�•‚·‚݂܂¹‚ñ‚Å‚µ‚½�B
ƒvƒ�ƒV�[ƒWƒƒ‚Ì�擪‚ðƒRƒs�[�•ƒy�[ƒXƒg‚·‚鎞‚É—]Œv‚È•”•ª‚ð�í�œ‚¹‚¸‚É“\‚è‚‚¯‚Ä‚¢‚½‚悤‚Å‚·�c
‹³‚¦‚Ä‚¢‚½‚¾‚¢‚½Žwަ‚Å�‘‚«Š·‚¦‚½‚Æ‚±‚듊“ü•\�ì�¬�Eƒ}ƒXƒ^�X�V‚Æ‚à‚¤‚Ü‚�s‚«‚Ü‚µ‚½�B
‚¢‚‚‚©‚̃f�[ƒ^‚ÅŽŽ‚µ‚½‚̂ł·‚ª�A
�¤•iA 1�s–Ú‚Ì�ÝŒÉ�F2000 2�s–Ú‚Ì�ÝŒÉ�F5000 ƒZƒbƒg�”�F3000
‚Æ‚¢‚¤Žž‚É�Aƒ}ƒXƒ^�[‚Ì1�s–Ú‚Ì�݌ɂÌ�”’l‚ª�u0�v‚ɂȂ鎞‚Æ�u-2000�v‚ƂȂ鎞‚ª‚ ‚é‚̂ł·‚ª�A‚Ç‚¤‚¢‚¤�ðŒ�‚łȂÁ‚Ä‚¢‚é‚Ì‚© ”»•Ê‚ª‚Ü‚¾‚‚«‚Ü‚¹‚ñ�B �æ“ú�‘‚«‚Ü‚µ‚½‚悤‚Ƀ}ƒXƒ^�[‚ð“ü—Í‹K‘¥‚ª“�ˆê‚³‚ê‚Ä‚¢‚È‚©‚Á‚½‚̂łǂ±‚©‚ª•¶Žš—ñ‚¾‚Á‚½‚è�”’l‚¾‚Á‚½‚肵‚Ä‚¢‚é‚Ì‚©‚à�c ˆø‚«‘±‚«ƒeƒXƒg‚µ‚È‚ª‚ç‰^—p‚ÉŽ�‚Á‚Ä‚¢‚«‚Ü‚·�B
–{“–‚É‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½�I
�i�Ⴞ‚é‚Ü�j
>‚¢‚‚‚©‚̃f�[ƒ^‚ÅŽŽ‚µ‚½‚̂ł·‚ª�A > >�¤•iA >1�s–Ú‚Ì�ÝŒÉ�F2000 >2�s–Ú‚Ì�ÝŒÉ�F5000 >ƒZƒbƒg�”�F3000 > >‚Æ‚¢‚¤Žž‚É�Aƒ}ƒXƒ^�[‚Ì1�s–Ú‚Ì�݌ɂÌ�”’l‚ª�u0�v‚ɂȂ鎞‚Æ�u-2000�v‚ƂȂ鎞‚ª‚ ‚é‚̂ł·‚ª�A‚Ç‚¤‚¢‚¤�ðŒ�‚łȂÁ‚Ä‚¢‚é‚Ì‚© >”»•Ê‚ª‚Ü‚¾‚‚«‚Ü‚¹‚ñ�B >�æ“ú�‘‚«‚Ü‚µ‚½‚悤‚Ƀ}ƒXƒ^�[‚ð“ü—Í‹K‘¥‚ª“�ˆê‚³‚ê‚Ä‚¢‚È‚©‚Á‚½‚̂łǂ±‚©‚ª•¶Žš—ñ‚¾‚Á‚½‚è�”’l‚¾‚Á‚½‚肵‚Ä‚¢‚é‚Ì‚©‚à�c
ŠÈ’P‚ȃeƒXƒg‚ð‚µ‚ÄŒ©‚Ü‚µ‚½‚ª�ã‹L‚Æ�¬‚鎖—á‚ÍŠm”F‚³‚ê‚Ü‚¹‚ñ‚Å‚µ‚½‚ª�H
1‚Â�A�l—¶‚µ‚Ä‚¢‚È‚©‚Á‚½Ž–‚É‹C‚ª•t‚«‚Ü‚µ‚½
�Ÿ‚ê‚Í�Aƒ}ƒXƒ^ƒ�ƒ“ƒeƒiƒ“ƒX‚Ì�¬‚³‚ê‚Ä‚¢‚È‚¢“™‚Å�A�ÝŒÉ�”0‚âƒ}ƒCƒiƒX�݌ɂª—L‚Á‚½�ê�‡‚É�A‚¢‚Ăł·
‚à‚µ‚©‚·‚邯�Ÿ‚ê‚ÉŠÖŒW‚µ‚Ä‚¢‚é‚©‚à‰ð‚è‚Ü‚¹‚ñ
�‚µ—Ž‚¿’…‚¢‚Ä‚©‚ç‚É‚µ‚悤‚ÆŽv‚Á‚Ä‚¢‚½‚̂ł·‚ª�H
�ã‹L‚Ì—l‚ÈŽ–—Ⴊ�o‚Ä—ˆ‚Ä‚¢‚é‚Ì‚Å�A‚±‚Ì‘Î�ô‚ð‚µ‚Ü‚·
‘Î�ô•û–@‚Í2ˆÄ�Ý‚è‚Ü‚·
1�AŒ»�Ý‚Ì�uFunction DrawUp�v‚Ì’†‚Ì�݌Ɉø“–‚ÌLoop‚É�A
If vntData(j, 3) > 0 Then
�@‚Æ“ü‚ê‚Ä�A�ÝŒÉ0Žá‚µ‚‚̓}ƒCƒiƒX�݌ɂ𖳎‹‚·‚é•û–@
�@‚±‚Ì�ê�‡�A’ljÁ‚Í2�s‚Å�ς݂܂·‚ª�ˆ—�‚ª’x‚�¬‚é‰Â”\�«‚ª—L‚è‚Ü‚·
2�A�C�³‚Í‘½‚�¬‚è‚Ü‚·‚ª�u�ì‹Æ—p�v‚É’Š�o‚·‚鎞“_‚Å’Š�o�ðŒ�‚É�ÝŒÉ0‚ð’´‚¦‚镨‚Æ�ðŒ�‚ð‘�‚₵‚Ä
�@‚»‚ÌŽž“_‚Å�݌ɂª0ˆÈ‰º‚Ì•¨‚ð�œŠO‚·‚é•û–@‚Å‚·
�@‚±‚Ì�ê�‡�A�uFunction DrawUp�v‚Ì’†‚Ì�݌Ɉø“–‚ÌLoop‚ÅŒ©‚é�s‚ª�‚È‚�¬‚é‚Ì‚Å�ˆ—�‚ª‘¬‚�¬‚è‚Ü‚·
‘´�ˆ‚Å‘æ2ˆÄ•û‚ð‚¨Š©‚ß‚µ‚Ü‚· ‚±‚Ì�ê�‡‚Ì•Ï�X“_‚Í�A 1�A�u�ì‹Æ—p�vƒV�[ƒg‚ɃtƒB�[ƒ‹ƒh‚ð’ljÁ‚µ‚Ü‚·�A�ê�Š‚Í�AO1ƒZƒ‹‚Å‚· �@D1‚É�Ý‚é�u“ü‰×ŽÀ�”�v‚ðO1ƒZƒ‹‚ÉCopy‚µ‚ĉº‚³‚¢ 2�AƒR�[ƒh‚ð•Ï�X‚µ‚Ü‚·•Ï�X‚·‚é‚Ì‚Í�uFunction GetData�v‚É�¬‚è‚Ü‚· �@ˆê‰ž�A�uFunction GetData�v‚Ì‘S•¶‚ð�Ú‚¹‚Ü‚·‚Ì‚Å�·‚µ‘Ö‚¦‚ĉº‚³‚¢ �@‘O‰ñ‚Ì•Ï�X•”•ª‚àŠÜ‚ñ‚Å‚¢‚Ü‚·
Private Function GetData(vntData As Variant, rngList As Range, _
rngWork As Range, vntStockID As Variant, _
vntSearch As Variant) As Boolean '�š•Ï�X
' “ü‰×ƒ}ƒXƒ^�[‚©‚çAdvancedFilter‚ðŽg‚Á‚ăf�[ƒ^‚ðŽæ“¾
Dim i As Long
Dim j As Long
Dim vntCrit As Variant
Dim rngCrit As Range
Dim lngRows As Long
Dim vntDate As Variant '�š’ljÁ
'�ì‹Æ—pƒV�[ƒg‚Ì�ðŒ�”͈͂Ì�擪ƒZƒ‹ˆÊ’u(ƒ}ƒXƒ^‚©‚ç•K—vƒf�[ƒ^‚ð’Š�o)
Set rngCrit = rngWork.Parent.Range("N1")
'�ÝŒÉID‚ð’Š�o�ðŒ�‚É�o—Í �š�ÝŒÉ�”‚ª0‚Ì�ê�‡‚Ì�ˆ—�’ljÁ
' ReDim vntCrit(1 To UBound(vntStockID, 2), 1 To 1)
ReDim vntCrit(1 To UBound(vntStockID, 2), 1 To 2) '�š•Ï�X
For i = 1 To UBound(vntStockID, 2)
vntCrit(i, 1) = "=" & """=" & vntStockID(1, i) & """"
vntCrit(i, 2) = "=" & """>0""" '�š’ljÁ
Next i
' rngCrit.Offset(1).Resize(UBound(vntStockID, 2)).Value = vntCrit
rngCrit.Offset(1).Resize(UBound(vntStockID, 2), 2).Value = vntCrit '�š•Ï�X
'“ü‰×ƒ}ƒXƒ^�[‚©‚ç•K—vƒf�[ƒ^‚ð’Š�o
' DoFilter rngList.CurrentRegion, _
' rngCrit.Resize(UBound(vntStockID, 2) + 1), _
' rngWork.Resize(, 11)
DoFilter rngList.CurrentRegion, _
rngCrit.Resize(UBound(vntStockID, 2) + 1, 2), _
rngWork.Resize(, 11) '�š•Ï�X
'�ì‹Æ—pƒV�[ƒg‚É�A‚¢‚Ä
With rngWork
'�s�”‚̎擾
lngRows = .Offset(Rows.Count - .Row).End(xlUp).Row - .Row
If lngRows <= 0 Then
GoTo Wayout
End If
'�šŽg—pŠúŒÀ�i”N�AŒŽ�A“ú�j‚ð•¶Žš—ñ‚É•Ï�X
vntDate = .Offset(1, 4).Resize(lngRows, 3).Value '�š’ljÁ
For i = 1 To lngRows '�š’ljÁ
For j = 1 To 3 '�š’ljÁ
If IsNumeric(vntDate(i, j)) Then '�š’ljÁ
vntDate(i, j) = Right("00" & vntDate(i, j), 2) '�š’ljÁ
End If '�š’ljÁ
Next j '�š’ljÁ
Next i '�š’ljÁ
'�šƒZƒ‹�‘Ž®‚ð•¶Žš—ñ‚É•Ï�X
.Offset(1, 4).Resize(lngRows, 3).NumberFormat = "@" '�š’ljÁ
'�š•¶Žš—ñ‚É‚µ‚½Žg—pŠúŒÀ�i”N�AŒŽ�A“ú�j‚ðƒV�[ƒg�o—Í
.Offset(1, 4).Resize(lngRows, 3).Value = vntDate '�š’ljÁ
'�ÝŒÉID�‡‚ÌŽg—pŠúŒÀ�i”N�AŒŽ�A“ú�j�‡‚Ì“ü‰×“ú�‡‚ÅList‚ð�®—ñ
'A—ñ‚©‚ç�®—ñ‚·‚é—ñ‚Ì—ñOffset‚ðŽw’è,‘S‚Ä�¸�‡‚Å
DataSort .Offset(1).Resize(lngRows, 11), Array(2, 4, 5, 6, 1), _
Array(xlAscending, xlAscending, xlAscending, _
xlAscending, xlAscending)
'‘S—ñƒf�[ƒ^‚ð”z—ñ‚Ɏ擾
vntData = .Offset(1, 1).Resize(lngRows + 1, 10).Value
'�š”z—ñ‚É�u“ü‰×ID�v‚ðŽæ“¾
vntSearch = .Offset(1).Resize(lngRows + 1).Value '�š’ljÁ
End With
GetData = True
Wayout:
Set rngCrit = Nothing
End Function
ˆÈ�ã
�®�A–{“–‚Í�oŒÉ�ê�Š‚à’Š�o�ðŒ�‚ɉÁ‚¦‚Ä’Š�o‚Å�i‚è�ž‚ß‚ê‚΂à‚Á‚Æ‘¬‚�¬‚é‚̂ł·‚ª�H
‘´‚ê‚Í�Aƒ}ƒXƒ^‚̃�ƒ“ƒeƒiƒX‚ª�I‚í‚Á‚½‚ç�A�Ⴞ‚é‚Ü‚³‚ñ‚ª�l‚¦‚ÄŒ©‚ĉº‚³‚¢
(Bun)
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
�¡‚̂Ƃ±‚ë�‡’²‚É‚¢‚Á‚Ă܂·�B
–{“–‚É‚¨Žè�”‚ð‚¨‚©‚¯‚µ‚Ü‚µ‚½�B
�i�Ⴞ‚é‚Ü�j
ˆê‰ž“®‚¢‚Ä—Ç‚©‚Á‚½‚Å‚·‚Ë
‚½‚¾�AŒ‹‰Ê‚Ì�ó‘Ô�A‰^—p�ã‚Ì•s“s�‡�Aƒf�[ƒ^‚Ì�X�V�ó‘Ô“™‚ð—Ç‚Šm”F‚µ‚Ä
–{”Ԃ̉^—p‚É‹Ÿ‚µ‚ĉº‚³‚¢‚Ë
(Bun)
[ ˆê——(�Å�V�X�V�‡) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.