Найти количество символов в ячейке Excel - C#
Формулировка задачи:
Доброго времени суток. Вопрос. Нужно программно определить количество символов в каждой ячейки одного столбца, и если колличество символов не равно меньше 10 то добавить в начале ячейке, перед символами "0"(ноль), как это можно сделать? Прошу помочь.
Ранее прогонял ячейки программно через прописывание в соседнем столбце ДЛСТР().
Решение задачи: «Найти количество символов в ячейке Excel»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Excel = Microsoft.Office.Interop.Excel;
using System.IO;
using System.Runtime.InteropServices;
namespace ConsoleApplication3
{
class Program
{
static void Main(string[] args)
{
Excel.Application xlApp;
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
Excel.Range range;
Excel.Application ObjExcel = new Excel.Application();
Excel.Workbook ObjWorkBook;
Excel.Worksheet ObjWorkSheet;
string str;
int rCnt;
int cCnt;
int rw = 0;
int g = 0;
int cl = 0;
xlApp = new Excel.Application();
xlWorkBook = xlApp.Workbooks.Open(@"C:\tariff02.xls", 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
range = xlWorkSheet.UsedRange;
rw = range.Rows.Count;
cl = range.Columns.Count;
ObjWorkBook = ObjExcel.Workbooks.Add(System.Reflection.Missing.Value);
ObjWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)ObjWorkBook.Sheets[1];
for (rCnt = 1; rCnt <= rw; rCnt++)
{
cCnt = 1;
str = (string)(range.Cells[rCnt /* Номер строки */ , cCnt/* Номер столбца */] as Excel.Range).Value2;
if (str == null) continue;
if (str.Length > 10) ObjWorkSheet.Cells[rCnt, 1] = ("0" + str);
else ObjWorkSheet.Cells[rCnt, 1] = (str);
}
xlWorkBook.Close(0);
xlApp.Quit();
ObjExcel.Visible = true;
ObjExcel.UserControl = true;
}
}
}