Откройте файл Excel и добавьте значение ячейки

Я использую C# и Excel Intropt.dll для своего проекта.

Я хочу открыть файл xlsx и добавить значение (например, «1») ко всем моим ячейкам на листе Sheet1.

Как я могу достичь этого?

Как это:

12   14    19    22

81   91    26    62

Результат:

13   15    20    23

82   92    27    63

person Armin Khodaei    schedule 13.04.2012    source источник


Ответы (1)


Вы можете использовать этот фрагмент. Cells[1,1] — первая ячейка в верхнем левом углу. Это получает первый лист, но вы также можете ссылаться на них по имени.

Excel.Application xlApp;
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
object misValue = System.Reflection.Missing.Value;

xlApp = new Excel.ApplicationClass();
xlWorkBook = xlApp.Workbooks.Open(_filename, 0, true, 5, "", "", true, Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);

//You can loop through all cells and use i and j to get the cells
xlWorkSheet.Cells[1,1].Value2 = Convert.ToInt32(xlWorkSheet.Cells[1,1].Value2) + 1;

xlWorkBook.Close(false, misValue, misValue);
xlApp.Quit();
person Amaranth    schedule 13.04.2012
comment
ОК, могу ли я использовать макрокоманду для замены значения? Вы сейчас командуете? (Я хочу добавить 1 к значению ячейки) - person Armin Khodaei; 13.04.2012
comment
Я не совсем понимаю ваш вопрос. Знаете ли вы, какие значения вы хотите вставить? Значение — это просто имя переменной, вы можете заменить его чем угодно. Вы можете создать два цикла для повторения всех нужных ячеек и присвоения значений каждой из них. - person Amaranth; 13.04.2012
comment
пример для моего плохого английского :) Как я могу получить значение ячейки [1,1]? - person Armin Khodaei; 13.04.2012
comment
Значение2 содержит значение ячейки. Вы можете читать или писать в нем. - person Amaranth; 13.04.2012
comment
Я сделал это, но по какой-то причине у меня не сохранились обновленные строки в электронной таблице... - person Si8; 12.01.2017