Você está na página 1de 3

Utilizado em um projeto de aplica��o desktop

try
{

Microsoft.Office.Interop.Excel.Application xlApp;
Microsoft.Office.Interop.Excel.Workbook xlWorkBook;
Microsoft.Office.Interop.Excel.Worksheet xlWorkSheet;
Microsoft.Office.Interop.Excel.Range range;

string str;
int rCnt;
int cCnt;
int rw = 0;
int cl = 0;

xlApp = new Microsoft.Office.Interop.Excel.Application();


xlWorkBook = xlApp.Workbooks.Open(@"C:\Importacao\drm.xlsx", 0,
true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t",
false, false, 0, true, 1, 0);
xlWorkSheet =
(Microsoft.Office.Interop.Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);

range = xlWorkSheet.UsedRange;
rw = range.Rows.Count;
cl = range.Columns.Count;

CATALOGO cat;
UNIDADECATALOGO uc;

for (rCnt = 2; rCnt <= rw; rCnt++)


{

if (range.Cells[rCnt, 1].value != null)


{

cat = new CATALOGO();


uc = new UNIDADECATALOGO();

cat.CtCodigoAreaAbrangencia =
Convert.ToInt32(range.Cells[rCnt, 2].value); //Usado para campo INT
cat.CtCodigoPeriodicidade =
Convert.ToInt32(range.Cells[rCnt, 3].value);

cat.CtDescricao = (string)(range.Cells[rCnt, 8] as
Microsoft.Office.Interop.Excel.Range).Value2; //Usado para campo STRING
cat.CtDescricao = cat.CtDescricao.ToUpper().Trim();

cat.CtRequisitoNormativo = (string)(range.Cells[rCnt, 15]


as Microsoft.Office.Interop.Excel.Range).Value2;
cat.CtRequisitoNormativo =
cat.CtRequisitoNormativo.ToUpper().Trim();

cat.CtPublicoAlvo = (string)(range.Cells[rCnt, 14] as


Microsoft.Office.Interop.Excel.Range).Value2;
cat.CtPublicoAlvo = cat.CtPublicoAlvo.ToUpper().Trim();

cat.CtPreRequisito = "NENHUM";

cat.CtObjetivo = (string)(range.Cells[rCnt, 12] as


Microsoft.Office.Interop.Excel.Range).Value2;
cat.CtObjetivo = cat.CtObjetivo.ToUpper().Trim();

cat.CtPrograma = (string)(range.Cells[rCnt, 13] as


Microsoft.Office.Interop.Excel.Range).Value2;
cat.CtPrograma = cat.CtPrograma.ToUpper().Trim();

cat.CtCargaHoraria = "01:00";
cat.CtCodigoForma = Convert.ToInt32(range.Cells[rCnt,
6].value);
cat.CtCodigoModalidade = Convert.ToInt32(range.Cells[rCnt,
4].value);
cat.CtCatalogoOficial = true;
cat.CtCodigoTipoCatalogo =
Convert.ToInt32(range.Cells[rCnt, 5].value);
cat.CtCodigoGrupoCatalogo = null;

CATALOGO.Incluir(cat);

uc.UcCodigoCatalogo = cat.CtCodigo;
uc.UcCodigoUnidade = 2;

UNIDADECATALOGO.Incluir(uc);

}
}

xlWorkBook.Close(true, null, null);


xlApp.Quit();

Marshal.ReleaseComObject(xlWorkSheet);
Marshal.ReleaseComObject(xlWorkBook);
Marshal.ReleaseComObject(xlApp);

KillExcel();

}
catch
{

public static void KillExcel()


{
Process[] AllProcesses = Process.GetProcessesByName("excel");

foreach (Process ExcelProcess in AllProcesses)


{
ExcelProcess.Kill();
}

if (AllProcesses.Count() > 0)
{
AllProcesses = null;
}
}

Você também pode gostar