public void OpenTest_Open() { using (var excel = new OperateExcel()) { excel.Open("template.xlsx"); excel.SelectSheet("テスト"); Assert.AreEqual("ほげほげ", excel.Read <string>(Cell.A1("B2"))); } }
public void CopySheetTestReal() { using (var excel = new OperateExcel()) { excel.Open("template.xlsx"); excel.CopySheet("コピーした奴", "検索", OperateExcel.SheetPosition.First); excel.CreateSheet("新規作成奴", OperateExcel.SheetPosition.AfterCurrentSheet); excel.SelectSheet("新規作成奴"); excel.Write(Cell.A1("A1"), "おおおお"); excel.Save("testCopy.xlsx"); } }
public void IsStrikethroughTest() { using (var excel = new OperateExcel()) { excel.Open("template.xlsx"); //全て取り消し線なし Assert.AreEqual(false, excel.IsStrikethrough(Cell.A1("B9"))); //セルごと取り消し線 Assert.AreEqual(true, excel.IsStrikethrough(Cell.A1("B10"))); //セル内の一部を取り消し線 Assert.AreEqual(false, excel.IsStrikethrough(Cell.A1("B11"))); //セル内のテキストを全て取り消し線 Assert.AreEqual(true, excel.IsStrikethrough(Cell.A1("B12"))); //改行以外を全て取り消し線 Assert.AreEqual(false, excel.IsStrikethrough(Cell.A1("B13"))); Assert.AreEqual(true, excel.IsStrikethrough(CellsRange.A1("B14:C14"))); Assert.AreEqual(false, excel.IsStrikethrough(CellsRange.A1("B15:C15"))); } }
public void CopySheetTest() { using (var excel = new OperateExcel()) { excel.Open(); excel.Write(Cell.A1("B2"), "あいうえお"); excel.CopySheet("first", "Sheet1", OperateExcel.SheetPosition.First); var names = excel.GetSheetNames(); Assert.AreEqual(2, names.Count); Assert.AreEqual("first", names[0]); Assert.AreEqual("Sheet1", names[1]); excel.CopySheet("last", "Sheet1", OperateExcel.SheetPosition.Last); names = excel.GetSheetNames(); Assert.AreEqual(3, names.Count); Assert.AreEqual("first", names[0]); Assert.AreEqual("Sheet1", names[1]); Assert.AreEqual("last", names[2]); excel.CopySheet("after", "Sheet1", OperateExcel.SheetPosition.AfterCurrentSheet); names = excel.GetSheetNames(); Assert.AreEqual(4, names.Count); Assert.AreEqual("first", names[0]); Assert.AreEqual("Sheet1", names[1]); Assert.AreEqual("after", names[2]); Assert.AreEqual("last", names[3]); excel.CopySheet("before", "Sheet1", OperateExcel.SheetPosition.BeforeCurrentSheet); names = excel.GetSheetNames(); Assert.AreEqual(5, names.Count); Assert.AreEqual("first", names[0]); Assert.AreEqual("before", names[1]); Assert.AreEqual("Sheet1", names[2]); Assert.AreEqual("after", names[3]); Assert.AreEqual("last", names[4]); foreach (var name in names) { excel.SelectSheet(name); Assert.AreEqual("あいうえお", excel.Read <string>(Cell.A1("B2"))); } } }
public List <CheckResult> Check(List <CheckTarget> targets) { var results = new List <CheckResult>(); foreach (var target in targets) { var specMetaInfo = specDocMetaInfoRepository.GetMetaInfo(target.SpecName); var sheet = specMetaInfo.Sheets.FirstOrDefault(x => x.SheetName == target.SheetName); var resourceReaders = CreateResourceReaders(sheet.ResourceFiles); using (var excel = new OperateExcel.OperateExcel()) { excel.Open(specMetaInfo.SpecDocPath); excel.SelectSheet(target.SheetName); foreach (var row in target.CheckRows) { foreach (var header in sheet.TableHeaders) { var resourceId = excel.Read <string>(Cell.A1(row, header.ResourceIdColumn)); if (string.IsNullOrEmpty(resourceId)) { results.Add(new CheckResult( target.SpecName, sheet.SheetName, row, "-", "外仕のリソースIDが空欄です." )); continue; } foreach (var langColumn in header.LanguageColumns) { var specString = excel.Read <string>(Cell.A1(row, langColumn.Column)); var resouceFileInfo = resourceReaders[langColumn.Language]; var resourceString = resouceFileInfo.Reader.FindString(resourceId); if (resourceString == null) { results.Add(new CheckResult( target.SpecName, sheet.SheetName, row, resouceFileInfo.ResourceFile.FilePath, "リソースID(" + resourceId + ")がリソースファイルに見つかりません." )); continue; } results.Add( new CheckResult( target.SpecName, sheet.SheetName, row, resouceFileInfo.ResourceFile.FilePath, resourceString, specString )); } } } } } return(results); }
public void CellByA1ColumnTest() { var range = Cell.A1(100, "AB"); Assert.AreEqual("AB100", range.A1Address); }