• Publicidad

Leer archivo de Excel e importar columnas a nuevo archivo

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Re: Leer archivo de Excel e importar columnas a nuevo archivo

Notapor explorer » 2010-04-07 06:18 @304

Por la captura en pantalla veo que todavía usas Windows, así que quizás sea una ventana de línea de comandos. En ese caso, para capturar el texto con el ratón, debes ir al icono de ventana que está en la esquina superior izquierda. Al pulsarle, aparece un menú, donde elegirás la entrada Editar, y dentro de ella, seleccionas Marcar. Con el ratón, seleccionas el texto que quieres copiar. Pulsas la tecla de Entrar en el teclado o vas al mismo menú de Editar y seleccionas la entrada Copiar. Ahora ya tienes el texto metido en el portapapeles, que puedes pegar en la ventana del navegador, dentro del mensaje.

Tienes razón en cuanto al error. No está en $i, sino en la línea donde pone

my $sp[$i] = ...

El fallo está en la palabra "my", que sobra.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Publicidad

Re: Operar columnas de datos

Notapor explorer » 2010-04-07 06:23 @308

MGRnovel escribiste:pero para operar los datos de las columna ¿qué uso? El ¿Math::MatrixReal?.

Depende de las operaciones que quieras hacer entre ellas... ¿qué quieres hacer?
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Leer archivo de Excel e importar columnas a nuevo archivo

Notapor MGRnovel » 2010-04-07 06:42 @321

Muchas gracias por los consejos

Quitando el my() lee eso bien, pero me sale otro error:

Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
syntax error at C:\corrientes.cgi line 85, near "sp["
Bareword "n" not allowed while "strict subs" in use at C:\corrientes.cgi line 85
.
Execution of C:\corrientes.cgi aborted due to compilation errors.
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


Que se refiere a las siguientes líneas:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
    sp[$i]->addrow(
        { content => 'Modulo', font_weight => 'bold' },
        { content => 'Direccion', font_weight => 'bold' }
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


que no soy capaz de entender. Muchas gracias de antemano.
MGRnovel
Perlero nuevo
Perlero nuevo
 
Mensajes: 9
Registrado: 2010-04-06 05:31 @271

Re: Operar columnas de datos

Notapor MGRnovel » 2010-04-07 06:58 @331

explorer escribiste:
MGRnovel escribiste:pero para operar los datos de las columna ¿qué uso? El ¿Math::MatrixReal?.

Depende de las operaciones que quieras hacer entre ellas... ¿qué quieres hacer?


Lo que necesito hacer es lo siguiente (llamaré a las columnas con letras, como hace Excel):
-columna A: datos de entrada
-columna B: datos de entrada
-columna C: quiero establecer un condicionante: si B>=0 que devuelva el valor de B, y si B<0 que devuelva el valor 360+B
-columna D: 2*pi*C/360
-columna E: A*senD
-columna F: A*cosD

¡Muchísimas gracias por la ayuda!
MGRnovel
Perlero nuevo
Perlero nuevo
 
Mensajes: 9
Registrado: 2010-04-06 05:31 @271

Re: Leer archivo de Excel e importar columnas a nuevo archivo

Notapor explorer » 2010-04-07 07:26 @351

MGRnovel escribiste:
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
syntax error at C:\corrientes.cgi line 85, near "sp["
Bareword "n" not allowed while "strict subs" in use at C:\corrientes.cgi line 85
.
Execution of C:\corrientes.cgi aborted due to compilation errors.
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4

Te has cargado un '$'.

Es muy difícil programar de esta manera...

¿No te interesaría aprender la sintaxis del lenguaje? Solo tardarás un par de días... consulta la documentación de Perl, en tu propio ordenador, un documento que se llama perlsyn.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Operar columnas de datos

Notapor explorer » 2010-04-07 07:39 @360

MGRnovel escribiste:Lo que necesito hacer es lo siguiente

Pero lo que no nos dices es si quieres que a partir de las columnas de datos, las celdas deben contener valores calculados desde Perl, o funciones Excel.

Ejemplo, si en una fila de la hoja aparecen, en las primeras columnas, los valores 3 y 120, ¿qué deben contener las columnas siguientes?

Caso primero, valores:
* Columna A: 3
* Columna B: 120
* Columna C: 120
* Columna D: 2.093333333333333333
* Columna E: 0.1095822939606997254
* Columna F: 2.997997952109092368

Caso segundo, funciones:
* Columna A: 3
* Columna B: 120
* Columna C: =SI(B1>=0;B1;360+B1)
* Columna D: =2*3.14*C1/360
* Columna E: =A1*SIN(D1)
* Columna F: =A1*COS(D1)

Caso tercero, una mezcla de las anteriores.

Anda... elige...
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Leer archivo de Excel e importar columnas a nuevo archivo

Notapor MGRnovel » 2010-04-07 09:50 @451

Lo que necesito son los valores, que me los calcule ya el Perl.

Muchísimas gracias por toda la ayuda prestada. Estoy leyendo tutoriales y manuales pero se me hace bastante complicado, voy a ver si localizo el documento perlsyn para entender un poco mejor este mundo.

¡Mil gracias de nuevo!
Última edición por explorer el 2010-04-07 09:58 @457, editado 1 vez en total
Razón: PERL => Perl
MGRnovel
Perlero nuevo
Perlero nuevo
 
Mensajes: 9
Registrado: 2010-04-06 05:31 @271

Re: Leer archivo de Excel e importar columnas a nuevo archivo

Notapor explorer » 2010-04-07 10:09 @465

La documentación de Perl la tienes instalada con el propio Perl. Si, por ejemplo, tienes instalada una distribución ActiveState, mira en Inicio->Programas->ActiveState->Documentación. También lo tienes desde la línea de comandos. Prueba con perldoc perlsyn. Y, finalmente, en la web.

Otro detalle... se dice "Perl", no "PERL". Perl es el nombre del lenguaje, no es un acrónimo ni son las siglas de nada, como sí lo es por contra, PHP. Se nombra igual que llamarías a Python, Java y Ruby.

En cambio, "perl" (en minúsculas), es el nombre del programa que usas para ejecutar programas Perl. :) Más información, en la página Perl de la Wikipedia.

En cuanto al cálculo de los valores... pues es cuestión de hacer matemáticas y guardar los valores. Perl cuenta con las funciones sin() y cos() (cálculo en radianes).

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
my $celdaC = $celdaB >= 0 ? $celdaB : 360+$celdaB;
my $celdaD = 2 * 3.14 * $celdaC / 360;
my $celdaE = $celdaA * sin $celdaD;
my $celdaF = $celdaA * cos $celdaD;
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Anterior

Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 8 invitados

cron