elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
27 Mayo 2012, 23:46  


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java (Moderadores: Debci, Leyer)
| | | |-+  [SOLUCIONADO] JExcel, con bucle para escribir.
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [SOLUCIONADO] JExcel, con bucle para escribir.  (Leído 925 veces)
NetJava

Desconectado Desconectado

Mensajes: 159



Ver Perfil
[SOLUCIONADO] JExcel, con bucle para escribir.
« en: 23 Mayo 2011, 12:17 »

Buenas,
Me he puesto a estudiar un poco la libr JExcel y me he encontrado con un problema al hacer un ejemplo... como casi siempre... XD

Código
//Los import todos ok.
public class escribir {
 
private WritableWorkbook libro;
private WritableSheet hoja;
private int c = 0;
 
public escribir(){
try{
libro = Workbook.createWorkbook(new File("ejemplo.xls"));
hoja = libro.createSheet("Hoja1", 0);
}catch(Exception e){
JOptionPane.showMessageDialog(null,"Error Escribir/Constructor.","Message",JOptionPane.INFORMATION_MESSAGE);
}
}
 
public void escribircontenido(String dato){
try{
 
   Label label = new Label(0,c,dato);
   c+=1;
   hoja.addCell(label);
   libro.write();
   if(c == 9){libro.close();}
 
}catch(Exception e){
JOptionPane.showMessageDialog(null,"Error Escribir contenido.","Message",JOptionPane.INFORMATION_MESSAGE);
}
}
}
 

En otro lugar hay un bucle que va llamando al método "escribircontenido", pasando el valor a escribir y ya esta... debería de funcionar llenándome un excel con 10 valores, cada uno en una fila de una misma columna,  pero no es así... solo me escribe el primer valor en la posición (0,0) y ya esta. Debe ser algo simple, pero no caigo XD

Saludos y gracias


« Última modificación: 25 Mayo 2011, 14:08 por NetJava » En línea
NetJava

Desconectado Desconectado

Mensajes: 159



Ver Perfil
Re:[Solucionado] JExcel, con bucle para escribir.
« Respuesta #1 en: 25 Mayo 2011, 14:06 »

Buenas gente,

El problema ya esta solucionado, pongo el ejemplo. Únicamente hay que tener en cuenta que si el bucle es de por ejemplo 90000, por algún motivo no furula...

Dejo el ejemplo que hice.

Código
 
package PackExcel3;
 
import java.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.*;
import javax.swing.*;
import javax.swing.event.*;
 
import jxl.*;
import jxl.LabelCell; //Para leer de la celda, no es necesario hasta que no se lea del excel.
import jxl.Workbook.*;
import jxl.write.*;
import jxl.write.Label;
import jxl.write.Number;
import jxl.write.WritableWorkbook.*;
import jxl.write.WritableSheet.*;;
 
 
public class interfaz extends JFrame implements ActionListener{
 
WritableWorkbook libro;
WritableSheet hoja;
GridBagConstraints constraint = new GridBagConstraints();
private JLabel jlbl_inf = new JLabel("Estado 0");
private JLabel jlbl_inf1 = new JLabel("Estado 1");
private JButton jbtn_comenzar = new JButton("Generar prueba 0");
private JButton jbtn_comenzar1 = new JButton("Generar prueba 1");
 
public interfaz(){
super("Ejem Excel 3");
definirventana();
definirelementos();
this.setVisible(true);
this.setSize(300, 200);
this.setResizable(false);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
 
private void definirventana(){
this.getContentPane().setLayout(new GridBagLayout());
 
constraint.gridx = 0;
constraint.gridy = 0;
constraint.gridwidth = 1;
constraint.gridheight = 1;
constraint.weightx = 1.0;
constraint.weighty = 1.0;
constraint.fill = GridBagConstraints.BOTH;
this.getContentPane().add(jbtn_comenzar, constraint);
 
constraint.gridx = 1;
constraint.gridy = 0;
constraint.gridwidth = 1;
constraint.gridheight = 1;
constraint.weightx = 1.0;
constraint.weighty = 1.0;
constraint.fill = GridBagConstraints.CENTER;
this.getContentPane().add(jlbl_inf, constraint);
 
constraint.gridx = 0;
constraint.gridy = 1;
constraint.gridwidth = 1;
constraint.gridheight = 1;
constraint.weightx = 1.0;
constraint.weighty = 1.0;
constraint.fill = GridBagConstraints.BOTH;
this.getContentPane().add(jbtn_comenzar1, constraint);
 
constraint.gridx = 1;
constraint.gridy = 1;
constraint.gridwidth = 1;
constraint.gridheight = 1;
constraint.weightx = 1.0;
constraint.weighty = 1.0;
constraint.fill = GridBagConstraints.CENTER;
this.getContentPane().add(jlbl_inf1, constraint);
}
 
private void definirelementos(){
this.jbtn_comenzar.addActionListener(this);
this.jbtn_comenzar1.addActionListener(this);
}
 
public void actionPerformed(ActionEvent ae){
if(ae.getSource() == jbtn_comenzar){
jlbl_inf.setText("Procesando 0");
crearWorkbook();
generar();
}
if(ae.getSource() == jbtn_comenzar1){
jlbl_inf1.setText("Procesando 1");
crearWorkbook();
generar1();
}
}
 
private void crearWorkbook(){
try{
libro = Workbook.createWorkbook(new File("Ejem3.xls"));
hoja = libro.createSheet("HEJEM", 0);
}catch(Exception e){
 
}
}
 
private void generar(){
try{
Label label = new Label(0, 0, "Ejem 3");
hoja.addCell(label);
 
for(int i = 1; i < 10; i++){
Number numero = new Number(0, i, i);
hoja.addCell(numero);
}
 
libro.write();
libro.close();
jlbl_inf.setText("Fin ejecución");
}catch(Exception e){
 
}
}
 
private void generar1(){
try{
for(int a = 0; a < 10; a++){
Label label = new Label(a, 0, "Colum "+a);
hoja.addCell(label);
for(int i = 1; i < 50000; i++){
Number numero = new Number(a, i, i);
hoja.addCell(numero);
}
}
 
libro.write();
libro.close();
jlbl_inf1.setText("Fin ejecución");
}catch(Exception e){
 
}
}
 
}
 
 


En línea
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Solucionado]Problema con un bucle infinito
Programación C/C++
saikun 5 971 Último mensaje 21 Enero 2008, 18:58
por saikun
Python- Leer línia archivo bucle[Solucionado]
Scripting
¨°o.O (ßa¢Kg|å§§) O.o° 7 2,046 Último mensaje 27 Marzo 2010, 17:25
por h0oke
Bucle FOR para copiar archivos[Solucionado]
Scripting
jsgc15 2 1,057 Último mensaje 15 Julio 2010, 18:05
por jsgc15
(Solucionado) [VBS] como hacer este bucle?
Scripting
EleKtro H@cker 11 1,555 Último mensaje 22 Febrero 2012, 10:14
por EleKtro H@cker
[Solucionado] Modificar el incremento del bucle for
Programación C/C++
Caster 6 403 Último mensaje 21 Febrero 2012, 16:23
por Caster
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines