entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

1voto

Problema al exportar datos a Excel

Hola!

Empezaré por mostrarles mi código donde le pido al usuario que ingrese los siguientes datos: Nombre,apellido,edad y sexo.
Esos datos se guardaran en Excel.
Tengan en cuenta que el archivo ya tiene datos en él guardados.

mi código es el siguiente:

void EscribirEnExcel(string pathfile)
         {

            string nombre="", apellido = "", sexo = "";
            char opt;
            int? Edad = null;
            SLDocument sL = new SLDocument(pathfile);
            SLWorksheetStatistics stats = sL.GetWorksheetStatistics();
            System.Data.DataTable dataTable = new System.Data.DataTable();
            int row = stats.EndRowIndex;
            Console.WriteLine(row);

            do {
                Console.WriteLine("Desea añadir más datos? Si(y) No(n) ");
                opt = Convert.ToChar(Console.ReadLine());
                row++;
                switch (opt)
                {
                    case 'y':

                        Console.WriteLine("Escriba su: nombre,apellido,edad y sexo");
                    nombre = Console.ReadLine();
                    apellido = Console.ReadLine();
                    Edad = Convert.ToInt32(Console.ReadLine());
                    sexo = Console.ReadLine();

                    dataTable.Columns.Add("Nombre", typeof(string));
                    dataTable.Columns.Add("Apellido", typeof(string));
                    dataTable.Columns.Add("Edad", typeof(int));
                    dataTable.Columns.Add("Sexo", typeof(string));

                        //registros
                        dataTable.Rows.Add(nombre, apellido, Edad, sexo);
                    sL.ImportDataTable(row, 1, dataTable, false);
                        sL.Save();

                    break;

                    case 'n':
                        break;

                }
            } while (opt != 'n') ;

         }

La segunda vez que trato de introducir datos al archivo me muestra el siguiente error:
'La columna 'Nombre' ya pertenece a DataTable.' en esta parte del código

dataTable.Columns.Add("Nombre", typeof(string));

Y si quito las columnas, me aparece el siguiente error:
'La matriz de entrada es más larga que el número de columnas en esta tabla.'
en

dataTable.Rows.Add(nombre, apellido, Edad, sexo);

¿cómo podría hacerlo de tal manera que puede ingresar los datos sin que me marque ninguno de los errores mencionados?

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta