Visualizzazione dei risultati da 1 a 5 su 5

Discussione: java & excel: HELP

  1. #1

    java & excel: HELP

    ciao a tutti,
    ho iniziato ad usare Java dopo l'esperienza vb.net per manipolare files excel.
    Ho un problema: da un file excel devo prendere il valore di una cella.
    L'ambiente di sviluppo che utilizzo è netbeans.
    Allora.....
    il codice che ho scritto è:
    codice:
    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
                        // TODO add your handling code here:
                String file = jTextField1.getText();
                File in = new File(file);
                Workbook w = null;
                int i=15;
                int j=2;
               
                try {
                try {
                    w = Workbook.getWorkbook(in);
                   
                } catch (BiffException ex) {
                    Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
                }
                } catch (IOException ex) {
                    Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
                }
                Sheet sheet = w.getSheet(0);
                int lastrow=sheet.getRows();
               Cell a1 = sheet.getCell(i,j); // riga che mi genera l'errore
    System.out.println(a1.getContents());
            
        }
    l'errore generato è:
    Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 15

    Se invece sostituisco le riga Cell a1 = sheet.getCell(i,j); con Cell a1 = sheet.getCell("A15"); l'output è quello desiderato. Oppure se il valore di i è 1 funziona.
    Perchè?

    ciao
    dottbin

  2. #2
    Mi sembra di vedere dal codice che usi le JExcelApi. Se non erro i parametrio del metodo getCell() sono colonna e riga e NON riga e colonna. Hai considerato questo?
    Forse dovresti fare:

    codice:
    ...
    Cell a1 = sheet.getCell(j, i);
    ...
    Inoltre la numerazione dovrebbe partire da zero.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #3
    grazie mille. hai perfettamente ragione!!!!
    utilizzo import java.jxl
    scusami se ne approfitto, ma quale libreria conviene utilizzare per smanettare al meglio con i files excel?
    tipo nel package jxl mi sembra di no aver trovato la funzione sort (per ordinare dal più piccolo al più grande).

    ciaoo

  4. #4
    Nel sito JExcelApi trovi un tutorial e le API. Io l'ho utilizzato solo un paio di volte tempo fa per cui non conosco le nuove funzionalità aggiunte.
    Per quanto riguarda il sort, a cosa ti serve? Per generare un Excel ordinato secondo una determinata colonna? Se così temo che l'ordinamento vada fatto a codice prima di inserire le varie righe già ordinate.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    cosa intendi per ordinamento a codice?
    Spesso mi viene dato un file excel da lavorare con un a colonna non ordinata. Con vb.net creo il range che mi interessa e poi faccio il sort.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.