У меня есть веб-форма HTML с 5 текстовыми вводами и кнопкой, вызывающей функцию JavaScript. Функция, как она есть, откроет существующий файл Excel, найдет последнюю заполненную строку, вставит новую строку под ней и поместит значения формы, по одному значению в каждую ячейку. Затем он сохраняет и выходит.
Электронная таблица, тем не менее, имеет более 5 столбцов, поэтому функция всегда помещает данные только в столбцы A - E.
function createData(){
var first = document.getElementById('A').value;
var second = document.getElementById('B').value;
var third = document.getElementById('C').value;
var fourth = document.getElementById('D').value;
var fifth = document.getElementById('E').value;
var xlDown = -4121
var w =new ActiveXObject("Excel.Application");
w.Visible=true;
w.Workbooks.Open("file:\\Form.xls");
objWorksheet = w.Worksheets(1);
objRange = w.Range("A1");
objRange.End(xlDown).Activate;
intNewRow = w.ActiveCell.Row + 1;
for (i=1; i<10000; i++){
objWorksheet.Cells(intNewRow, 1) = first;
objWorksheet.Cells(intNewRow, 2) = second;
objWorksheet.Cells(intNewRow, 3) = third;
objWorksheet.Cells(intNewRow, 4) = fourth;
objWorksheet.Cells(intNewRow, 5) = fifth;
}
w.ActiveWorkbook.SaveAs("file:\\Form.xls");
w.Quit();
alert("The data has been added to the spreadsheet");
}
Что я на самом деле хочу сделать, так это:
Электронная таблица может содержать или не содержать данные в столбцах A-G в каждой строке.
Я хочу, чтобы функция осуществляла поиск в столбце B существующего листа по текстовому значению «first» (как определено выше). Если найдено, вставьте остальные 4 значения в соответствующие ячейки в столбцах H-K. Если не найдено, вставьте все 5 значений в новую строку «first» в столбце B, а остальные в столбец H-K.
Я давно этим занимаюсь и, похоже, не могу его взломать, хотя знаю, что это можно сделать.
Любая помощь будет принята с благодарностью!