Форум: "Начинающим";
Текущий архив: 2007.09.23;
Скачать: [xml.tar.bz2];
ВнизActiveCell.FormulaR1C1 = "=SUM(R[-CInt(num)]C:R[-1]C)" Найти похожие ветки
← →
gentos (2007-08-29 17:17) [0]здрасте пишу макрос по работе необходимо есть следующая ситуация :
num типа integer - не работает !
когда пишу
ActiveCell.FormulaR1C1 = "=SUM(R[-39]C:R[-1]C)" - все работает
а когда подставляю вместо 39 num=39 и типа integer - не работает в чем прикол ?
← →
gentos (2007-08-29 17:20) [1]код корявый пишу первый раз в VB так что звыняйте , в чем прикол не знаю может нельзя в сумму вставлять переменную типа интежер, а можно только вставлять конкретное число ? хелпа не работает чего-то , гон
Sub MacrOblenergo()
Dim cordnameofpage, num, konec, i As Integer
Dim NameOfList As String
cordnameofpage = 2 " incsrease on 40
cord1 = 2 " incsrease on 40
cord2 = 41 " incsrease on 40
For counter = 1 To 4
Windows("30817 ïî Îáëåíåðãî2.xls").Activate
Sheets("Ëèñò2").Select
NameOfList = Range("A" + CStr(cordnameofpage))
NameOfList = Range("A" + CStr(cordnameofpage))
For i = cordnameofpage To cordnameofpage + 50
If NameOfList <> Range("A" + CStr(i)) Then
konec = i - 1
Exit For
End If
Next
Range(Cells(cordnameofpage, 2), Cells(konec, 27)).Select
Selection.Copy
Windows("Òåñò Òåìïåðàòóðà çà 2004 ãîä.xls").Activate
On Error Resume Next
Err.Clear
AnyThing = Sheets(NameOfList).Name
If Err.Number = 0 Then
"MsgBox "Ëèñò ""Ðàáî÷èé"" ñóùåñòâóåò!"
"âñòàâëÿåì äàííûå
Sheets(NameOfList).Select
Range("B31").Select
ActiveSheet.Paste
Columns("A:A").EntireColumn.AutoFit
"âñòàâëÿåì äàííûå
Windows("30817 ïî Îáëåíåðãî2.xls").Activate
Sheets("Ëèñò2").Select
Range(Cells(1, 2), Cells(1, 27)).Select
Selection.Copy
Windows("Òåñò Òåìïåðàòóðà çà 2004 ãîä.xls").Activate
Sheets(NameOfList).Select
Range("B30").Select
ActiveSheet.Paste
Range("A30").Select
ActiveCell.FormulaR1C1 = "Ñïîæèâàííÿ áðóòòî (ïî îáëåíåðãî)"
Columns("A:A").EntireColumn.AutoFit
Selection.Font.Bold = True
"" ñ÷èòàåì ñóììó ïî ñòîëáöàì
num = CInt(konec) - CInt(cordnameofpage) + 1 "39
Range("C" + CStr(31 + CInt(num))).Select " c70
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=SUM(R[-CInt(num)]C:R[-1]C)"
Selection.AutoFill Destination:=Range(Cells(31 + CInt(num), 3), Cells(31 + CInt(num), 27)), Type:=xlFillDefault
"" ñ÷èòàåì ñóììó ïî ñòîëáöàì
Range("B" + CStr(31 + CInt(num))).Select
ActiveCell.FormulaR1C1 = "Bñüîãî"
Range(Cells(31 + CInt(num), 2), Cells(31 + CInt(num), 27)).Select
Selection.Font.Bold = True
Columns("A:A").EntireColumn.AutoFit
Columns("B:B").EntireColumn.AutoFit
End If
Err.Clear
cordnameofpage = konec + 1
Next
End Sub
← →
Сергей М. © (2007-08-29 17:21) [2]Что значит "не работает" ? Не компилируется что ли ?
← →
gentos (2007-08-29 17:23) [3]
> Сергей М. © (29.08.07 17:21) [2]
компилируется но сумму на листе не выводит
я имею ввиду эта строка
ActiveCell.FormulaR1C1 = "=SUM(R[-CInt(num)]C:R[-1]C)"
не срабатывает , в случае когда пишу
ActiveCell.FormulaR1C1 = "=SUM(R[-39]C:R[-1]C)"
- работает ...
← →
umbra © (2007-08-29 17:24) [4]
> SUM(R[-CInt(num)]C:R[-1]C)
формула - это строка.
"SUM(R[-" + Cstr(num) + "]C:R[-1]C)"
← →
gentos (2007-08-29 17:36) [5]
> umbra © (29.08.07 17:24) [4]
ActiveCell.FormulaR1C1 = "=SUM(R[-" + CStr(num) + " ]C:R[-1]C)"
но так тоже не работает :/
← →
gentos (2007-08-29 17:39) [6]
> umbra © (29.08.07 17:24) [4]
все ок спасибо большое , тема закрыта
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.09.23;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.05 c