#excel #vba
Вопрос:
Здесь я определяю CCCE рабочего листа для получения значений переменных:
For Each wb In Workbooks If InStr(wb.Name, "Compeat US Bank Upload") Then Set wbut = wb 'ut = upload template Set CCCE = wbut.Sheets("Corner CC Entries") ClearTargetSheet Exit For End If Next wb
В этой подпрограмме я загружаю значения в переменные Account, Entity и Amt, и они хранятся в этом порядке в переменных, но закомментированная часть с 3 командами CCCE.Range выдает ошибки. Я думал, что .значение будет работать, когда .Адреса не было, но ни один из подходов не сработал.
Public Sub Process() Dim a, ColA As Range, Account, lastrowA, Entity As String, Ent As String, Amt As Double, ctr As Integer lastrowA = ws.Cells(Rows.Count, 1).End(xlUp).Row FindPivot Set ColA = ws.Range(Cells(fprow 1, 1).Address, Cells(lastrowA - 1, 1).Address) ctr = 4 'Find pivot values amd store them in variables For Each a In ColA If InStr(a.Value, "#") gt; 0 Then Ent = a.Value If Ent = "#3 Ann Arbor" Then Entity = "003" ElseIf Ent = "#5 Plymouth" Then Entity = "005" End If Amt = a.Offset(0, 1) * -1 ctr = ctr 1 'CCCE.Range(Cells(ctr, 1).value = Account 'CCCE.Range(Cells(ctr, 2).Address = Entity 'CCCE.Range(Cells(ctr, 3).Address = Amt ElseIf a.Value gt; 1000 Then Account = a.Value End If 'Exit For Next End Sub
Большое спасибо за помощь в моем проекте.
Брайан
Комментарии:
1. «ошибка»-какое точное сообщение об ошибке вы получаете? Во всех этих 3 строках отсутствует закрытие
)
, но синтаксис отключен.CCCE.Range(Cells(ctr, 1).value = Account
должно бытьCCCE.Cells(ctr, 1).value = Account
и аналогично для других 2 строк2. Большое спасибо Тиму за правильный синтаксис! Снижение «Диапазона» было для меня ключевым моментом. Я действительно видел недостающее закрытие ) , но уже отправил свой вопрос.