Read Excel cell data automatically
From the given examples, before reading an excel data, you have to specify the start cell and the end cell number. Is there a method to read out excel data just by giving the file name?
David
Well, then you can open Excel, open the first sheet in the collection and then iterate into the sheet and search for non-empty cells.
You can use the source code for ExcelRpt_ReadDataToTableControl () function into excelreport.c code as a guideline to develop your own function: iterate on all cells in the sheet and try to load only those that do not return CAVT_EMPTY in CA_VariantGetType () function.
Proud to use LW/CVI from 3.1 on.
My contributions to the Developer Zone Community
If I have helped you, why not giving me a kudos?
Similar Messages
-
Read excel cell when excel is already open
Hello,
I want to read a specific cell of a sheet with excel already open. Labview has only to read the cell and not have to open excel.
I have several examples that show :
Labvview open excel
select excel file
select workbook
select sheet
select cell
read cell
close workbook
close excel
In my vi i only need the step 3 to 6
Thank for your help
Djamel
Solved!
Go to Solution.The attached (LabVIEW 2012) vi will return the value in the cell 'A1' of 'Sheet1' of the already open excel workbook 'book1'
Change the values for your specific names of workbook and worksheet and required cell.
The value returned is a variant so need to be converted with 'Variant to Data' according to data type
Ken
Attachments:
Get cell value from already open Excel.vi 18 KB -
This is a follow up from my question last week. I am back to trying to figure out how to read excel data cells and store the values into variables. I've looked through the sample files and copied the code from excel2000demo.cws. I can't actually run this demo since I don't have excel on my system. I need to be able to read the .xls without having Excel loaded. I've put ReadDataFromExcel into my program but when I try and run it, I get an error code(negative) at the Excel_WorksheetRange statement. The error is invalid handle. The line is:
error = Excel_WorksheetRange (ExcelWorksheetHandle, NULL, MyCellRangeV, CA_DEFAULT_VAL, &ExcelRangeHandle);
I don't really understand what the parameters are or should be and if certain things need to be defined elsewhere.
It also seems like I should have code to tell it what file to look into. The demo uses Excel_WorkbooksOpen. Is that ok to use with no Excel? I did try adding:
GetProjectDir (fileName);
strcat(fileName, "\\exceldem.xls");
error = Excel_WorkbooksOpen (ExcelWorkbooksHandle, NULL, fileName, CA_DEFAULT_VAL,
CA_DEFAULT_VAL, CA_DEFAULT_VAL,
CA_DEFAULT_VAL, CA_DEFAULT_VAL,
CA_DEFAULT_VAL, CA_DEFAULT_VAL,
CA_DEFAULT_VAL, CA_DEFAULT_VAL,
CA_DEFAULT_VAL, CA_DEFAULT_VAL,
CA_DEFAULT_VAL, &ExcelWorkbookHandle);
I get invalid handle errors here too.
MikeUnfortunately you cannot run this example without having installed Excel on your system, since the instrument driver it relies on is nothing but an ActiveX interface to the local Excel application.
In effect, if you look into the source code for this example, you will notice that the very first operation performed is to connect to Excel: this instruction will fail if the application is not installed, so all the following code cannot be executed. You will notice that every opening function in the source code relies on an handle provided from a preceding statement, in a continuous chain whose first element is exactly the connection to the Excel app: this is valid for ExcelWorksheetHandle, ExcelWorbookHandle and all the handles used in the code.
Edit: Eren has come first!
Message Edited by Roberto Bozzolo on 04-28-2010 07:22 AM
Proud to use LW/CVI from 3.1 on.
My contributions to the Developer Zone Community
If I have helped you, why not giving me a kudos? -
Hi,
How can I read a specific excel cell via Web Dynpro ?
It will be great if someone will provide a short sample of code for that ...
10x in advance
HadarHi Chandran i followed you steps regarding to upload excel sheet data to webdynpro table.
but iam not get clarity how to do this step.
Note : You cannot Read the Content from the excel file directly
First You Have to copy that file to the Server,
And from the Server you can get the file absolute path
With the absolute path you can read the contents of the Excel file
You have to save the Excel file as .xls Format and Not as xlsx format i will not accept that...
help me onthis step, i need to develop the this feature in application.
you posted like this
Hi
First You have to download the jxl.jar file. You can get this file from the Below site
JExcelApi v2.6.4 (1747kbytes)
It will be in Compressed Fromat So Unzip it to get the Contents
After Unzipping The File You will get a Folder (jexcelapi/jxl.jar)
Now in NWDS open web dynpro explorer, Right Click Your Project, a popup menu will appear and in that click Properties
You will get window displaying your Project Properties
On Left Side of the window You Will Find "Java Build Path"
Click That "Java Build Path" and you will get 4 Tabs Showing ( Source,Projects,Libraries,Order and Export)
Click Libraries Tab
You will find options many options buttons
In that click the Button "Add External Jars"
You will get Window in order to fecth the jxl.jar file from the location you had stored
After selecting the jxl.jar i will get displayed and click ok
Now Open Navigator
Open Your Project
You will find Lib folder
Copy the jxl.jar to that lib folder
Note : You cannot Read the Content from the excel file directly
First You Have to copy that file to the Server,
And from the Server you can get the file absolute path
With the absolute path you can read the contents of the Excel file
You have to save the Excel file as .xls Format and Not as xlsx format i will not accept that...
You have Upload the Excel file from the Server Using the File Upload UI Element
This Coding will extract 3 columns from the Xls File
Coding
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import com.sap.fileupload.wdp.IPrivateFileUpload_View;
import com.sap.tc.webdynpro.services.sal.datatransport.api.IWDResource;
public void onActionUpload_File(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionUpload_File(ServerEvent)
IPrivateFileUpload_View.IContextElement element1 = wdContext.currentContextElement();
IWDResource resource = element1.getFileResource();
element1.setFileName(resource.getResourceName());
element1.setFileExtension(resource.getResourceType().getFileExtension());
//@@end
public void onActionUpload_File_in_Server(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionUpload_File_in_Server(ServerEvent)
InputStream text=null;
int temp=0;
try
File file = new File(wdContext.currentContextElement().getFileResource().getResourceName().toString());
FileOutputStream op = new FileOutputStream(file);
if(wdContext.currentContextElement().getFileResource()!=null)
text=wdContext.currentContextElement().getFileResource().read(false);
while((temp=text.read())!=-1)
op.write(temp);
op.flush();
op.close();
path = file.getAbsolutePath();
wdComponentAPI.getMessageManager().reportSuccess(path);
catch(Exception e)
e.printStackTrace();
//@@end
public void onActionUpload_Data_into_Table(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
//@@begin onActionUpload_Data_into_Table(ServerEvent)
try
Workbook wb =Workbook.getWorkbook(new File(path));
Sheet sh = wb.getSheet(0);
//wdComponentAPI.getMessageManager().reportSuccess("Columns = "+sh.getColumns());
//wdComponentAPI.getMessageManager().reportSuccess("Rows = "+sh.getRows());
int columns = sh.getColumns();
int rows = sh.getRows();
int i=0;
for(int j=1;j<=rows;j++)
ele=wdContext.nodeTable_Data().createTable_DataElement();
Cell c1 = sh.getCell(i,j);
ele.setTab_Name(c1.getContents());
Cell c2 = sh.getCell(i+1,j);
ele.setTab_Degree(c2.getContents());
Cell c3 = sh.getCell(i+2,j);
ele.setTab_Percentage(c3.getContents());
wdContext.nodeTable_Data().addElement(ele);
catch(Exception ex)
wdComponentAPI.getMessageManager().reportSuccess(ex.toString());
//@@end
The following code section can be used for any Java code that is
not to be visible to other controllers/views or that contains constructs
currently not supported directly by Web Dynpro (such as inner classes or
member variables etc.). </p>
Note: The content of this section is in no way managed/controlled
by the Web Dynpro Designtime or the Web Dynpro Runtime.
//@@begin others
String path;
IPrivateFileUpload_View.ITable_DataElement ele;
//@@end
Regards
Chandran S -
Hello
I would like to link a pdf file to an excel file so that I can set some anchor points in the pdf file that will allow the pdf to change the value of these anchor points whenever the cells' values in excel change.
Is there any way or any software to do this?
Thankshi,
well you are saying that your excel file contains the name of the file which is stored at somewhere in your root directory structure?..........if is it so then do you want to store the name of the file which is specified in the excel cell, to oracle database as BLOB or CLOB or you want to read the actual content available in the doc or excel file and then store it to oracle database? please verify........
this is possible using poi.....visit the apache's website for more information on POI api and downloads.......
thanks
shishir -
Listen for excel cell data change
I want to develop a program that listens when an excel cell value changes...
snoopybad77 wrote:
I use http://jdde.pretty-tools.com/ very simple but working.
By the looks of it, you might want to start with [DDEClientEventListener.onItemChanged()|http://jdde.pretty-tools.com/javadoc/com/pretty_tools/dde/client/DDEClientEventListener.html#onItemChanged%28java.lang.String,%20java.lang.String,%20java.lang.String%29], but I've got absolutely no idea how it works, never having used the product before.
Winston
Edited by: YoungWinston on Jul 5, 2010 1:43 AM
PS: It looks like there's something very similar to what you want on their examples page as well. You clearly haven't done much looking. -
How do I import Excel cell data in to an already built custom list.
I have a custom list that we are using as an End Of Shift Report.
I would like to expand the list to incorporate some of our process data. (We are a paper mill). We have a data historian, PI Process Book, that has an Excel add-in, that allows us to import the process data in to Excel.
I am able to do the "import spreadsheet" function and get the data in to a new list. What I can't figure out is either how to import directly in to the custom list I have already created, or how to import from the new list to the custom list.
I could use the "new list" as a container for several different process points if I could figure out how to load the process data in to the custom list.
We are currently using WSS3, but are upgrading in either the 4th Q this year, or Q1 2014.
Any other suggestions on how to display single point data (End of Shift Inventory calculations for example) in a custom sharepoint list are welcome.
I want to take a tank level reading, which we monitor and multiply it by X gallons per foot, then load the total gallons in to the custom list1) Open WSS List, and Export it to Excel
2) Open the Excel file you want to import
3) Copy the cells in the source and paste them into the Excel file openned from the WSS List (only highlight one row to paste, it will fill down)
4) You will see vaildation errors (yellow triangles), if there are any, correct them
5) In the menubar go Data --> List --> Sync List
6) You will see a blue status bar fill in the bottom left as data is copied up to the List
Or you can try the below tools
> SharePoint Excel Import 2.5
http://www.boostsolutions.com/sharepoint-excel-import.html
> Import Excel data to SharePoint List.
http://spreadsheet2splist.codeplex.com/
Regards MuSa -
Reading Excel sheet data in WebDynpro Java Application
Hi,
I need to read an excel file which is stored locally in my computer. How to use upload UI element (in WebDynpro Java) ?
After reading the excel file the data is displayed in table structure in WD Java application. After doing some calculations on click of generate excel button the table data is translated into excel sheet. How to achieve this?
Thanks,
AnmolHi,
Hope the below links helps...
Re: upload & download files
https://wiki.sdn.sap.com/wiki/display/WDJava/Uploading%20excel%20file%20using%20WebDynpro%20for%20Java
http://www.sdn.sap.com/irj/scn/weblogs;jsessionid=(J2EE3417600)ID0729285250DB01215080400348251106End?blog=/pub/wlg/6603
Thanks,
Prakash -
Read an Excel cell using LabView
Hello,
I'm trying to read Excel cells with LabView, witch can be numeric data
or text.
I want to chose the Excel cell to read.
I try to use AtiveX commands in order to do so, but it doesn't work,
and I don't understand all concepts of activeX.
I searched on the web, but I didn't find any simple example witch can
run for me.
Can we do it without activeX commands?
Do you have any simple example to send me?
Thank you for your help.
Jean-Louis, France.Here is a simple VI that uses ActiveX to read an Excel cell. It is set up for string values, but it can be changed. If you get a broken run arrow, than you may have to reconfigure some of the propery nodes for your version of Excel.
Attachments:
Get_Excel_Cell_Sub.vi 99 KB -
How to read and write data in to a specified range of cells(it include multiple row & columns) in excel
CVI Comes with a sample project that explains how to read/write to a Excel file: choose "Explore examples..." in CVI welcome page and navigate to <cviSampleDir>\activex\excel folder where you can load excel2000dem.prj.
Proud to use LW/CVI from 3.1 on.
My contributions to the Developer Zone Community
If I have helped you, why not giving me a kudos? -
Importing tables with linked cell data from excel to indesign
Hey,
I'm designing a catalog and have been linking the tables in InDesign from a spreadsheet in excel. In my spreadsheet, I am linking cells from a master sheet to another sheet so that I when I update the information on one sheet, it will update throughout the spreadsheet.
Now that I have the linked cells set up in my spreadsheet, I've inputed the tables into InDesign but: the table cells in InDesign containing linked cells from within the spreadsheet do not appear.
I've gone through all the import table options in InDesign and cannot find a way to make it work.
Does anyone have an answer or input?
Thanks,
KTWhen we are updating the excel sheet it automatically updates the link in InDesign and it's continually changing. Does CSV break the links in excel or does it keep them and allows InDesign to read the linked cells as well?
Thanks for your response! -
Using Lab view ver 6,How can I read a cell of excel file right after I write to it
How can I read a specif cell of an Excel file using Labview VI.
Hi,
Attached is a LV6.1 VI which will read a cell.
It will be looking for a sub VI found in the example C:\Program Files\National Instruments\LabVIEW\examples\comm\ExcelExamples.llb.
The returned value is a string value but there is no reason why it couldn't be a number. Just connect a numeric to the type connector of the Variant to Data function.
Hope this helps.
Regards
Ray Farmer
Regards
Ray Farmer
Attachments:
Get_Cell_Value.vi 41 KB
Write_Table_To_XL.vi 101 KB -
Reading Excel data through java servlets
I am doing a project in jsp and servlet. During the project i have to read some excel data from the excel sheet and store them to DB2 database. While reading from the data from the excel sheet a problem occurred. I have used the poi package to read the data from the excel sheet and the code is correct and it reads the excel sheet. Now i just displayed the number of rows and cells in the excel sheet and while displaying the value of the every cell, the servlet displays only the address of each cell instead of displaying the value. Here i am attaching the code that i have used and the output of the servlet.
One more thing that i have noticed here is i just wrote a simple java program to read the excel data using the same steps that used earlier in the servlet. In this case the program displays the actual value of the excel cell.
Could you please help me to solve the problem.
try
String fileName = req.getParameter("file1");
String filePath = "C:
Program Files
Apache Software Foundation
Tomcat6.0
webapps
kbsearch
WEB-INF
Excel Fles
"+fileName;
poifs = new POIFSFileSystem(new FileInputStream(filePath));
book = new HSSFWorkbook(poifs);
sheet = book.getSheetAt(0);
int totalRow = sheet.getLastRowNum();
out.print("Total Number of Rows: "+totalRow);
for(int i=2; i<=totalRow; i++)
row = sheet.getRow(i);
int totalColumn = row.getLastCellNum();
out.print("<br>Total Cell: "+totalColumn);
for(int j=0; j<=totalColumn; j++)
cell = row.getCell((short)j);
out.print("<br>Cell Value: "+cell);
catch(Exception e)
out.println("
Error: "+e.getMessage());
OUTPUT
Total Number of Rows: 9
Total Cell: 9
Cell Value: org.apache.poi.hssf.usermodel.HSSFCell@1450f1f
Cell Value: org.apache.poi.hssf.usermodel.HSSFCell@e3f02a
Cell Value: org.apache.poi.hssf.usermodel.HSSFCell@ac622a
Cell Value: org.apache.poi.hssf.usermodel.HSSFCell@160c21a
Cell Value: org.apache.poi.hssf.usermodel.HSSFCell@1677737
Cell Value: org.apache.poi.hssf.usermodel.HSSFCell@1c3dc66
Cell Value: org.apache.poi.hssf.usermodel.HSSFCell@1babddb
Cell Value: org.apache.poi.hssf.usermodel.HSSFCell@1069693
Cell Value: org.apache.poi.hssf.usermodel.HSSFCell@187b360
Cell Value: org.apache.poi.hssf.usermodel.HSSFCell@1172c5My copy of POI came with documentation including the Javadocs part:
org.apache.poi.hssf.usermodel.HSSFCell
double getNumericCellValue()
get the value of the cell as a number. For strings we throw an exception. For blank cells we return a 0.
public java.lang.String getStringCellValue()
get the value of the cell as a string - for numeric cells we throw an exception.
For blank cells we return an empty string.
For formulaCells that are not string Formulas, we return empty String
*/ -
How Do I Open The Excel Spreadshee​t And Modify The Cell Data
How can I change the cell content in specific excel spreadsheet with ActiveX control? I am using LabVIEW7.1
you can open the excel file using Active X . The procedur to open the excel file, will get in the examples. There is an ready made Vi. for that.
Then select the properties Cell in active X, and you can change the cell data by doing some modification in that vi. i hope it will help you. -
Read all cells from an Excel file?
Hi!
I'm trying to read every cell from an Excel spreadsheet file, e.g.
test.xls. The example in the NI Dev Zone (ActiveX Read Cells from
Excel2000 VI) works if you know in advance what the first and last cell
are, e.g. A1 and E453.
The trouble is that the number of rows & columns in the file will vary;
the last cell of 1 file might be E453, another might end at F29.
How can I programmatically read every cell in the file? I thought of 2
approaches:
1: Find an ActiveX property that returns the last cell (or last row and
last column).
2: Use some other way to read an .xls file, maybe not by launching Excel
but by using another program ...
The NI applications engineer couldn't find a reasonably easy solution,
so I'd w
elcome any input.
Thanks! MarkMark,
I haven't been able to find out if there is an ActiveX property or method the excel exposes to be able to do this ... searching on http://msdn.microsoft.com didn't return anything particularly useful.
I've tried this sort of thing a couple of different ways. The simplest is if I have control over the file generation code, in that case I've just used the first row A1 and B1 to contain the number or rows and columns respectively and moved on from there.
If that isn't a possibility then you could enter nonsense data around the acutal data and then look for that and then resize the array. This could get pretty slow if you read row by row, I've somtimes read chuncks of rows and then adjusted the next read and and combined arrays. With a large data set the memory and s
peed implications do need to be looked at.
The last thing is what you are referring to in 2. You should be able to save the .xls file as a comma delimited file. In this case the "Read for Spreadsheet File" vi should be able to just read all the data in. I'm not sure how easy it is to export an .xls file to a comma delimited format programatically.
I think this should work all though I haven't tried it. If it doesn't then you could just read one row and then count the number of commas to determine the number of columns. You can then read the entire file and convert the data into an array, as every comma would separate each column and a carriage return would seperate each row.
Haven't got LabVIEW on this machine so if I find anything new tomorrow I'll post again.
Kamran
Maybe you are looking for
-
How do I use airport extreme to share my (seagate) usb external hard drive
I talked to apple support and I was told it wont work for that but the sales info for the router (in the apple store website) says it is almost plug and play adn will work fro my ,ac or my PC's. I have seen a number of yeah and nays but, REALLY
-
Good night, I am just starting in bussines design, i am not rich enough to buy photoshop license, but i'm loved to use photoshop, could i use photoshop cs2 for free version? Thanks alot for your attention.
-
Postings to G/L accounts with open item management are not permitted in ASKB
Hi Gurus, I have the error FAGL_POST_SERVICE012 'Postings to G/L accounts with open item management are not permitted' when i run the transaction ASKB. The very strange thing is that in table APERB_ITEMS for this company code there isn't any record.
-
How to set sourceURL for MS Access database in other computer?
How to set sourceURL for MS Access database in other computer? getConnection("jdbc:odbc://www.micrsoft.com:9999/msaccess"); How do you determine the port for the MS Access? Thank you very much.
-
Hi! Good afternoon, I'm getting this error Error in 'CompanyService' during command 'Query' stack en System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolea