Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

JAVA and Excel

Posted on 1998-06-25
2
Medium Priority
?
575 Views
Last Modified: 2008-03-10
How do i go about retrieving information from an excel table using java?
I would like to try an application using servlets, for I am attempting to run it over an intranet.
The data returned after the excel operation will be presented in HTML.
0
Comment
Question by:n1ck
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 5

Expert Comment

by:msmolyak
ID: 1223770
It is more common to retrieve the table information from Database Management Systems for which you can use JDBC.  Any chance you can save the same info in MS Access instead of Excel?
0
 

Accepted Solution

by:
williacw earned 200 total points
ID: 1223771
You may manipulate EXCEL through its COM interface.
There is no sense in reinventing the wheel, so I'll point you to an appropriate article at the Microsoft Knowledge Base. It is titled Automating EXCEL with Java. It has instructions and sample source code.

Enjoy!
http://support.microsoft.com/support/kb/articles/q169/7/96.asp

In case the link is not working, I've been receiving SERVER BUSY errors at the Microsoft Site, I've attached the text below.

HOWTO: Automate Excel from Java
Last reviewed: January 29, 1998
Article ID: Q169796  
The information in this article applies to:
Microsoft Win32 Virtual Machine for Java
Visual J++ 1.0, 1.1,
SDK for Java 2.0
Microsoft Win32 Virtual Machine for Java
Internet Explorer 3.x,4.0.


SUMMARY
This article illustrates how to call a COM object like Excel from Java. It provides code samples that show how you can make an Excel application visible and open an existing Excel file. There are two code samples. One illustrates how to invoke Excel 7.0 from Java and the other shows how to invoke Excel 8.0 from Java. You will find the classes and interfaces to be quite different in Excel 8.0.



MORE INFORMATION
Before using code samples 1 and 2, follow these steps below:


Use the Java Applet Wizard to create a default Applet or Application.

Run JAVATLB or JACTIVEX(utility similar to JAVATLB and supported by the SDK for Java 2.0)on the Microsoft Excel7.0 Object Library if you are using Excel 7.0 or the Microsoft Excel 8.0 Object Library if you are using Excel 8.0. This will create Java descriptions of the Excel Object.
NOTE: If you are using JACTIVEX, then you will need to build this sample with the JVC.EXE that ships with the SDK2.0 for Java. You can download the SDK for Java 2.0 from http://www.microsoft.com/java/.


Use the import statement to import the classes of the Excel Object Library into your Java project.

Insert either one of the two code snippets in your Java Project to automate Excel from Java.

Code Sample 1

   import xl5en32.*;
   import com.ms.com.*;
   public void TestExcel()
   {
      _Global gbl = (_Global) new _ExcelApplication();
      Variant param = gbl.Application();
      Application app = (Application) param.getDispatch();
      param.putInt(xl5en32.Constants.xlVisible);
      app.putVisible(param);

      Variant vtemp = new Variant();
      vtemp.noParam();

      Variant vtWorkbooks = Dispatch.get(gbl,"Workbooks");
      Workbooks wbs = (Workbooks)vtWorkbooks.getDispatch();

      Variant vtName = new Variant();
      VtName.putStringRef("C:\\book1.xls");

      Variant vtEmpty = new Variant();
      vtEmpty.noParam();
      wbs.Open(vtName,vtEmpty,vtEmpty,vtEmpty,vtEmpty,vtEmpty,vtEmpty,
               vtEmpty,vtEmpty,vtEmpty,vtEmpty,vtEmpty,vtEmpty);
   }

Code Sample 2

   import excel8.*;
   import com.ms.com.*;

   _Global globXL=null;
   _Application appXL=null;
   Workbooks books=null;
   _Workbook book = null;

   try{
      globXL = (_Global)new Global();
      appXL = (_Application)globXL.getApplication();
      appXL.putVisible(0,true);
      books = (Workbooks)appXL.getWorkbooks();

      Variant vTemp = new Variant();
      vTemp.putString("c:\\book1.xls");

      Variant vOptional = new Variant();
      vOptional.noParam();
      book =
(_Workbook)books.Open("c:\\book1.xls",vOptional,vOptional,vOptional,vOption al,vOptional,vOptional,vOptional,vOptional,vOptional,vOptional,vOptional,vO ptional,0);

      }
      catch(ComFailException e)
      {
         System.out.println(e.getMessage());
      }

The above code will make the Excel application visible, and it will open up an existing Excel file.


REFERENCES
For the latest Knowledge Base articles and other support information on Visual J++ and the SDK for Java, see the following page on the Microsoft Technical Support site:


   http://support.microsoft.com/support/visualj/
   http://support.microsoft.com/support/java/

Keywords          : kbcode kbinterop kbprg JCOM
Technology        : kbInetDev
Platform          : WINDOWS
Issue type        : kbhowto
 


0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

An old method to applying the Singleton pattern in your Java code is to check if a static instance, defined in the same class that needs to be instantiated once and only once, is null and then create a new instance; otherwise, the pre-existing insta…
This was posted to the Netbeans forum a Feb, 2010 and I also sent it to Verisign. Who didn't help much in my struggles to get my application signed. ------------------------- Start The idea here is to target your cell phones with the correct…
Viewers learn about the third conditional statement “else if” and use it in an example program. Then additional information about conditional statements is provided, covering the topic thoroughly. Viewers learn about the third conditional statement …
How to fix incompatible JVM issue while installing Eclipse While installing Eclipse in windows, got one error like above and unable to proceed with the installation. This video describes how to successfully install Eclipse. How to solve incompa…
Suggested Courses

618 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question