|
▼初心者 さん
こんにちは
Dim vnt As Range として
Set vnt = .Range("Z2", .Range("A65536").End(xlUp))
と変更して試してみるとどうなりますか?
>教えてください。
>
>あるシートの項目をキーにScripting.Dictionaryを利用して
>集計処理しています。
>
>このScripting.Dictionaryの処理の途中でセルの色の判定は
>できるのか教えてください。
>
> '●別シートに集計内容出力(部課計)
>
> Dim vnt, A
> Dim dic As Object
>
> '
> With Sheets("作業")
> vnt = .Range("Z2", .Range("A65536").End(xlUp)).Value
> End With
> '
> Set dic = CreateObject("Scripting.Dictionary")
> For i = 1 To UBound(vnt, 1)
> If Not dic.exists(vnt(i, 9)) Then
> ReDim A(11)
> A(0) = vnt(i, 9)
> ''a(2) = vnt(i, 18)
> A(4) = vnt(i, 4)
> A(7) = vnt(i, 22)
> A(8) = wk2
> A(9) = wk3
> Else
>
>
> A = dic(vnt(i, 9))
>
> End If
>
> A(1) = A(1) + vnt(i, 17)
> A(3) = A(3) + vnt(i, 19)
> A(5) = A(5) + vnt(i, 20)
> A(6) = A(6) + vnt(i, 21)
>
> '★ここの箇所のように色の条件付けをしたい。'
> If vnt(i, 12).Interior.Color <> 15773696 Then
>
> A(2) = A(2) + vnt(i, 12)
> End If
> '===============================================
>
> dic(vnt(i, 9)) = A
> Next i
>
> '-----結果出力
> With Sheets("作業2")
> .Cells.ClearContents
> .Range("A1").Resize(, 10).Value = Array("形名略称", "数量", "当社計上額", "金額", "注文番号", "税額", "税込金額", "部課", "コメント", "担当者コード", "当社計上金額")
> .Range("A2").Resize(dic.Count, 10).Value = Application _
> .Transpose(Application.Transpose(dic.items))
> .Select
> End With
> '
> Erase vnt
> Set dic = Nothing
>
>
>(CStr(Cells(i, 16).Interior.Color) <> 15773696
|
|