макрос для Excel в javascript
Подскажите пожалуйста как лучше переделать этот макрос на javascript
Sub test() With Application .UseSystemSeparators = True End With Dim LastCell As Range: Set LastCell = Range("B65536").End(xlUp).Offset(1) LastCell.FormulaR1C1 = "=SUM(R1C:R[-1]C)" LastCell.AutoFill LastCell.Resize(, 2) LastCell.EntireRow.Cells(1) = "Итог:" End Sub |
Может это глупый вопрос)
Подскажите тогда где почитать про это |
Цитата:
а что он делает то?) много чего есть в книге VBA и программирование в MS Office для пользователей |
Sub test()
With Application .UseSystemSeparators = True //устанавливает системный разделитель, чтобы у всех пользователей была "." между целой и дробной части в числах End With Dim LastCell As Range: Set LastCell = Range("B65536").End(xlUp).Offset(1) LastCell.FormulaR1C1 = "=SUM(R1C:R[-1]C)" LastCell.AutoFill LastCell.Resize(, 2) LastCell.EntireRow.Cells(1) = "Итог:" // находит последнее число в столбце, и в пустую ячейку записывает сумму столбца End Sub |
Цитата:
function test() { with (Application) { .UseSystemSeparators = true; } var LastCell = Range("B65536").End(xlUp).Offset(1); LastCell.FormulaR1C1 = "=SUM(R1C:R[-1]C)"; LastCell.AutoFill LastCell.Resize(, 2); LastCell.EntireRow.Cells(1) = "Итог:"; } |
Спасибо большое!
|
<html>
<head> <input type='button' value='Excel'; onClick="javascript: var xls = new ActiveXObject ( 'Excel.Application' ); xls.visible = true; var newBook = xls.Workbooks.Add; newBook.Worksheets.Add; newBook.Worksheets(1).Activate; newBook.Worksheets(1).Cells(1,1).value='1.25, 3.82'; newBook.Worksheets(1).Cells(2,1).value='2.1, 1'; newBook.Worksheets(1).Cells(1,2).value='1, 4'; newBook.Worksheets(1).Cells(2,2).value='10 , 12'; newBook.Worksheets(1).Name='WorkSheet from Javascript'; function test() { with (Application) { .UseSustemSeparators = true; } var LastCell = Range('B65536').End(xlUp).Offset(1); LastCell.FormulaR1C1 = '=SUM(R1C:R[-1]C)'; LastCell.AutoFill LastCell.Resize(, 2); LastCell.EntireRow.Cells(1) = 'Итог:'; } " // newBook.Worksheets(1).SaveAs('C:\\temp\\TEST2.XLS' ); </head> </html> как его модернизировать?) |
Цитата:
<html> <head> <title>Excel</title> <script> function test() { var xls = new ActiveXObject ( 'Excel.Application' ); xls.visible = true; var newBook = xls.Workbooks.Add; newBook.Worksheets.Add; newBook.Worksheets(1).Activate; newBook.Worksheets(1).Cells(1,1).value='1.25, 3.82'; newBook.Worksheets(1).Cells(2,1).value='2.1, 1'; newBook.Worksheets(1).Cells(1,2).value='1, 4'; newBook.Worksheets(1).Cells(2,2).value='10 , 12'; newBook.Worksheets(1).Name='WorkSheet from Javascript'; with (Application) { .UseSustemSeparators = true; } var LastCell = Range('B65536').End(xlUp).Offset(1); LastCell.FormulaR1C1 = '=SUM(R1C:R[-1]C)'; LastCell.AutoFill LastCell.Resize(, 2); LastCell.EntireRow.Cells(1) = 'Итог:'; } </script> </head> <body> <input type='button' value='Excel' onClick="test()"> </body> </html> и лучше все это запихнуть в HTML Application (.hta), чтобы никаких запросов на разрешение выполнения ActiveX-объектов не появлялось... |
Цитата:
|
Цитата:
в 22 строке все так и должно быть даже на VBA? LastCell.AutoFill LastCell.Resize(, 2); AutoFill() это метод для автоматического заполнения диапазона [читать здесь], и в скобках перед запятой наверно тоже цифорки не хватает [читать здесь] LastCell.AutoFill(); LastCell.Resize(3, 2); |
Часовой пояс GMT +3, время: 20:48. |