■
なんだよ、そんなものがあること誰も教えてくれなかったぞっ!
と思いながらも、また面倒くさいインストールをしなくてよいことがわかり、ほっとした。
--
■ 上手くいくコード
Application.Dialogs(xlDialogEditColor).Show(Index, R, G, B)
引数
Index Variant 任意変更したいカラーパレットのスロット番号(1~56)
R Variant 任意初期色の赤成分(0~255)
G Variant 任意初期色の緑成分(0~255)
B Variant 任意初期色の青成分(0~255)
戻り値は、ダイアログのOK(True)/ キャンセル(False)
■ ダメなコード
Application.Dialogs(xlDialogEditColor).Show()
引数がないと、現在アクティブなセルの背景色をセット
戻り値は、ダイアログのOK(True)/ キャンセル(False)
■ ダメなコード
Dim iRow As Long
Dim iLastRow As Long
Dim dictProduct As Object ' Scripting.Dictionary
' 辞書を作る
Set dictProduct = CreateObject("Scripting.Dictionary")
' ワークシートを変数に仕舞っておく
Set wsSource = Wb.Worksheets(1)
iLastRow = wsSource.Cells(wsSource.Rows.Count, "A").End(xlUp).Row
For iRow = 2 To iLastRow
' インスタンスを作る
Dim recordData As New ProductCategoryRecord
' A列 CONT_HIN_CD 品目コードをキーとする
key = wsSource.Cells(iRow, 1).value
If key = "" Then Exit For
' レコード情報の読み込みと構造体への格納
recordData.ContHinCD = key ' CONT_HIN_CD
recordData.ShouhinDiv = wsSource.Cells(iRow, 2).value ' SHOHIN_DIV
recordData.Course = wsSource.Cells(iRow, 3).value ' COURSE
.
.
.
■ おっけーなコード
Dim iRow As Long
Dim iLastRow As Long
Dim dictProduct As Object ' Scripting.Dictionary
Dim recordData As ProductCategoryRecord
' 辞書を作る
Set dictProduct = CreateObject("Scripting.Dictionary")
' ワークシートを変数に仕舞っておく
Set wsSource = Wb.Worksheets(1)
iLastRow = wsSource.Cells(wsSource.Rows.Count, "A").End(xlUp).Row
For iRow = 2 To iLastRow
' インスタンスを作る
Set recordData = New ProductCategoryRecord
' A列 CONT_HIN_CD 品目コードをキーとする
key = wsSource.Cells(iRow, 1).value
If key = "" Then Exit For
' レコード情報の読み込みと構造体への格納
recordData.ContHinCD = key ' CONT_HIN_CD
recordData.ShouhinDiv = wsSource.Cells(iRow, 2).value ' SHOHIN_DIV
recordData.Course = wsSource.Cells(iRow, 3).value ' COURSE
.
.
.