Manipular dados do Excel com java

2 respostas
excelprogramaçãojava
V

Boa tarde pessoal!

estou desenvolvendo um a aplicação que requer consultas no Excel, porém a minha busca trás todas as informações da minha planilha. Por exemplo, tenho informações nas células A1, A2, B1 e B2. Só quero pegar o valor da célula A2, alguém consegue me ajudar? Segue o código.

import java.io.File;

import java.io.FileInputStream;

import java.util.Iterator;

import javax.sql.RowSetInternal;
import javax.swing.JOptionPane;

import org.apache.poi.hssf.usermodel.HSSFCell;

import org.apache.poi.ss.format.CellFormatType;

import org.apache.poi.ss.formula.EvaluationCell;

import org.apache.poi.ss.usermodel.Cell;

import org.apache.poi.ss.usermodel.Row;

import org.apache.poi.ss.usermodel.Sheet;

import org.apache.poi.ss.util.CellReference;

import org.apache.poi.ss.util.SheetReferences;

import org.apache.poi.xssf.usermodel.XSSFSheet;

import org.apache.poi.xssf.usermodel.XSSFWorkbook;

public class InitializeAutomaticExcel {

public static void main(String[] args) throws Exception {

	File buscar = new File("C:\\Users\\HP\\VictorSalles\\TesteLogin.xlsx");

	FileInputStream entrar = new FileInputStream(buscar);

	// cria um workbook que le todas as abas
	XSSFWorkbook workbook = new XSSFWorkbook(entrar);
	
	Sheet sheet = workbook.getSheet("A1");

	// puxa apenas a primeira aba
	XSSFSheet planilha1 = workbook.getSheetAt(0);

	// retorna todas as linhas da aba 1
	Iterator<Row> linhaIterartor = planilha1.iterator();

			System.out.println(sheet);
	
	// varre todas as linhas
	while (linhaIterartor.hasNext()) {

		// recebe cada linha d aplanilha
		Row linha = linhaIterartor.next();

		// recebe as celuas das linhas
		Iterator<Cell> celulaiterator = linha.iterator();
		
		 // varrendo todas as celulas da linha
		while (celulaiterator.hasNext()) {

			// criando uma celula
			Cell celula = celulaiterator.next();

			CellReference cellreference = new CellReference(0, 1);
			
			System.out.println(cellreference.formatAsString());
			
			System.out.println(celula.getStringCellValue());
			
		}
	

		 
	}
}

}

Obrigado

2 Respostas

J
V

Obrigado, era exatamente oq precisava. Precisei fazer alguns ajustes no código, mas funcionou.

Criado 8 de novembro de 2018
Ultima resposta 8 de nov. de 2018
Respostas 2
Participantes 2