|
▼UO3 さん:
おはようございます。
そうですよね。。。こんなに長いコードから絞り込むのは難しいですよね。
無理を言ってしまいすみませんでした。
ではここだけでもよろしいでしょうか。
Dim dicA As Object
Dim dicB As Object
Dim dicAonly As Object
Dim dicBonly As Object
Dim d As Variant
Dim colA() As Variant
Dim colB() As Variant
Dim shA As Worksheet
Dim shB As Worksheet
Dim c As Range
Dim vntTitleA As Variant
Dim vntTitleB As Variant
ここと
headStr = vbTab & Join(WorksheetFunction.Index(sh.Range("A1", sh.Cells(1, sh.Columns.Count).End(xlToLeft)).Value, 1, 0), vbTab) & vbTab
With CreateObject("VBScript.RegExp")
x = UBound(vntT) + 1
For x = 1 To x
ck = vntT(x - 1)
.Pattern = vbTab & "(" & ck & ")" & vbTab
With .Execute(headStr)
If .Count = 0 Then
z = 0
Else
n = .Item(0).firstindex + 1
wStr = Left(headStr, n)
z = Len(wStr) - Len(Replace(wStr, vbTab, ""))
End If
End With
If z = 0 Then
MsgBox sh.Name & "のタイトル行に" & ck & "がないので処理を終了します"
Exit Function
End If
v(x) = z
sh.UsedRange.Columns(z).Interior.ColorIndex = xlNone
Next
End With
GetCol = True
End Function
ここだけでも。全体ではなく大切な所だけで結構ですので。。。
よろしくお願いします。
|
|