コード例 #1
0
 /// <summary>
 /// List<Form> Init(int toc_line) - initiate all Forms for Document in toc_line.
 /// </summary>
 /// <param name="toc_line">line number in TOC</param>
 /// <returns>form list</returns>
 public static List<Form> Init(int toc_line)
 {
     Log.set("Init(" + toc_line + ")");
     //------------------------------------------------------------------------------
     language = true; //en-US for Englisg Debug. Remove or comment this line later  !
     //------------------------------------------------------------------------------
     List<Form> Forms = new List<Form>();
     for (int col = Decl.DOC_FORMS, i = 0; i < 10; i++)
     {
         string s = Lang(tocMtr.Strng(toc_line, col++));
         if (string.IsNullOrEmpty(s)) continue;
         if (FileOp.isNamedRangeExist(Wb, s))
         {
             List<int> _r = new List<int>();
             List<int> _c = new List<int>();
             string sf = s + "_F";
             if (FileOp.isNamedRangeExist(Wb, sf))
             {
                 Mtr format = new Mtr(Wb.Names.Item(sf).RefersToRange.Value);
                 for (int c = 1; c <= format.iEOC(); c++)
                     for (int r = 1; r <= format.iEOL(); r++)
                     {
                         string f = format.Strng(r, c);
                         if (f.Contains("{") & f.Contains("}")) { _r.Add(r); _c.Add(c); }
                     }
             }
             Forms.Add(new Form(s, _r, _c));
         }
     }
     Log.exit();
     return Forms;
 }
コード例 #2
0
ファイル: FileOp.cs プロジェクト: PavelKhrapkin/TSmatch
        public static void saveRngValue(Mtr Body, int rowToPaste = 1, bool AutoFit = true, string msg = "")
        {
            Log.set("saveRngValue");
            int r0 = Body.LBoundR(), r1 = Body.iEOL(),    //!!
                c0 = Body.LBoundC(), c1 = Body.iEOC();    //!!

            try
            {
                object[,] obj = new object[r1, c1];
                for (int i = 0; i < r1; i++)
                {
                    for (int j = 0; j < c1; j++)
                    {
                        obj[i, j] = Body[i + 1, j + 1];
                    }
                }
                r1 = r1 - r0 + rowToPaste;
                r0 = rowToPaste;
                Excel.Range cell1 = _sh.Cells[r0, c0];
                Excel.Range cell2 = _sh.Cells[r1, c1];
                Excel.Range rng   = _sh.Range[cell1, cell2];
                rng.Value = obj;
                if (AutoFit)
                {
                    for (int i = 1; i <= c1; i++)
                    {
                        _sh.Columns[i].AutoFit();
                    }
                }
            }
            catch (Exception e)
            {
                if (msg == "")
                {
                    msg = "Range[ [" + r0 + ", " + c0 + "] , [" + r1 + ", " + c1 + "] ]";
                }
                Log.FATAL(msg);
            }
            Log.exit();
        }
コード例 #3
0
 private static void colCpy(Mtr mtr, int rwMtr, Excel.Range rng, int rwRng)
 {
     int cols = mtr.iEOC();
     //!!! 2.1.16            for (int col = 1; col <= cols; col++) rng.Cells[rwRng, col] = mtr.get(rwMtr, col);
 }
コード例 #4
0
ファイル: FileOp.cs プロジェクト: AlexandrBobtsov/TSmatchLITE
 public static void saveRngValue(Mtr Body, int rowToPaste = 1, bool AutoFit = true, string msg = "")
 {
     Log.set("saveRngValue");
     int r0 = Body.LBoundR(), r1 = Body.iEOL(),    //!!
         c0 = Body.LBoundC(), c1 = Body.iEOC();    //!!
     try
     {
         object[,] obj = new object[r1, c1];
         for (int i = 0; i < r1; i++)
             for (int j = 0; j < c1; j++)
                 obj[i, j] = Body[i + 1, j + 1];
         r1 = r1 - r0 + rowToPaste;
         r0 = rowToPaste;
         Excel.Range cell1 = _sh.Cells[r0, c0];
         Excel.Range cell2 = _sh.Cells[r1, c1];
         Excel.Range rng = _sh.Range[cell1, cell2];
         rng.Value2 = obj;
         if( AutoFit) for (int i = 1; i <= c1; i++) _sh.Columns[i].AutoFit();
     }
     catch (Exception e)
     {
         if (msg == "")
         { msg = "Range[ [" + r0 + ", " + c0 + "] , [" + r1 + ", " + c1 + "] ]"; }
         Log.FATAL(msg);
     }
     Log.exit();
 }