thanks a ton Mark! This was really helpful. I will wait for one day before filing it as a bug. Maybe someone has a solution before that.
Till then let me explore the hyperlink function to make it happen indirectly. Thanks again for your time! MSB wrote: > > Sorry to say that I cannot get this to work. I found some code in a file > in the examples package that looks something like this; > > HSSFWorkbook wb = new HSSFWorkbook(); > > //cell style for hyperlinks > //by default hyperlinks are blue and underlined > org.apache.poi.hssf.usermodel.HSSFCellStyle hlink_style = > wb.createCellStyle(); > org.apache.poi.hssf.usermodel.HSSFFont hlink_font = > wb.createFont(); > > hlink_font.setUnderline(org.apache.poi.hssf.usermodel.HSSFFont.U_SINGLE); > > hlink_font.setColor(org.apache.poi.hssf.util.HSSFColor.BLUE.index); > hlink_style.setFont(hlink_font); > > org.apache.poi.hssf.usermodel.HSSFCell cell; > org.apache.poi.hssf.usermodel.HSSFSheet sheet = > wb.createSheet("Hyperlinks"); > > //URL > cell = sheet.createRow(0).createCell(0); > cell.setCellValue("URL Link"); > org.apache.poi.hssf.usermodel.HSSFHyperlink link = new > org.apache.poi.hssf.usermodel.HSSFHyperlink(org.apache.poi.hssf.usermodel.HSSFHyperlink.LINK_URL); > link.setAddress("http://poi.apache.org/"); > cell.setHyperlink(link); > cell.setCellStyle(hlink_style); > > //link to a file in the current directory > cell = sheet.createRow(1).createCell(0); > cell.setCellValue("File Link"); > link = new > org.apache.poi.hssf.usermodel.HSSFHyperlink(org.apache.poi.hssf.usermodel.HSSFHyperlink.LINK_FILE); > link.setAddress("C:\\temp\\sample.xls"); > cell.setHyperlink(link); > cell.setCellStyle(hlink_style); > > //e-mail link > cell = sheet.createRow(2).createCell(0); > cell.setCellValue("Email Link"); > link = new > org.apache.poi.hssf.usermodel.HSSFHyperlink(org.apache.poi.hssf.usermodel.HSSFHyperlink.LINK_EMAIL); > //note, if subject contains white spaces, make sure they are > url-encoded > link.setAddress("mailto:p...@apache.org?subject=hyperlinks"); > cell.setHyperlink(link); > cell.setCellStyle(hlink_style); > > //link to a place in this workbook > > //create a target sheet and cell > org.apache.poi.hssf.usermodel.HSSFSheet sheet2 = > wb.createSheet("Target Sheet"); > sheet2.createRow(0).createCell(0).setCellValue("Target Cell"); > > cell = sheet.createRow(3).createCell(0); > cell.setCellValue("Worksheet Link"); > link = new > org.apache.poi.hssf.usermodel.HSSFHyperlink(org.apache.poi.hssf.usermodel.HSSFHyperlink.LINK_DOCUMENT); > link.setAddress("Target Sheet!A1"); > cell.setHyperlink(link); > cell.setCellStyle(hlink_style); > FileOutputStream out = new > FileOutputStream("C:/temp/hyperlinks.xls"); > wb.write(out); > out.close(); > > but it still exhibits the same problems - the file and intra document > links do not work. > > Unless someone else can post a solution then I think that you will need to > report this as a bug; it only applies to the HSSF strand however as the > example in the Quick Guide works perfectly well for XSSFWorkbooks. > > Yours > > Mark B > > > sujikin wrote: >> >> Hi, >> >> I am using the below code against poi 3.5 beta 5 >> >> public class ExcelTest { >> @Test >> public void testClone() throws FileNotFoundException, IOException{ >> HSSFWorkbook wb = new HSSFWorkbook(); //or new HSSFWorkbook(); >> CreationHelper createHelper = wb.getCreationHelper(); >> >> //cell style for hyperlinks >> //by default hypelrinks are blue and underlined >> CellStyle hlink_style = wb.createCellStyle(); >> Font hlink_font = wb.createFont(); >> hlink_font.setUnderline(Font.U_SINGLE); >> hlink_font.setColor(IndexedColors.BLUE.getIndex()); >> hlink_style.setFont(hlink_font); >> >> Cell cell; >> Sheet sheet = wb.createSheet("Hyperlinks"); >> //URL >> cell = sheet.createRow(0).createCell((short)0); >> cell.setCellValue("URL Link"); >> >> Hyperlink link = >> createHelper.createHyperlink(Hyperlink.LINK_URL); >> link.setAddress("http://poi.apache.org/"); >> cell.setHyperlink(link); >> cell.setCellStyle(hlink_style); >> >> //link to a file in the current directory >> cell = sheet.createRow(1).createCell((short)0); >> cell.setCellValue("File Link"); >> link = createHelper.createHyperlink(Hyperlink.LINK_FILE); >> link.setAddress("link1.xls"); >> cell.setHyperlink(link); >> cell.setCellStyle(hlink_style); >> >> //e-mail link >> cell = sheet.createRow(2).createCell((short)0); >> cell.setCellValue("Email Link"); >> link = createHelper.createHyperlink(Hyperlink.LINK_EMAIL); >> //note, if subject contains white spaces, make sure they are >> url-encoded >> >> link.setAddress("mailto:p...@apache.org?subject=hyperlinks"); >> cell.setHyperlink(link); >> cell.setCellStyle(hlink_style); >> >> //link to a place in this workbook >> >> //create a target sheet and cell >> Sheet sheet2 = wb.createSheet("Target Sheet"); >> >> sheet2.createRow(0).createCell((short)0).setCellValue("Target >> Cell"); >> >> cell = sheet.createRow(3).createCell((short)0); >> cell.setCellValue("Worksheet Link"); >> Hyperlink link2 = >> createHelper.createHyperlink(Hyperlink.LINK_DOCUMENT); >> link2.setAddress("'Target Sheet'!A1"); >> cell.setHyperlink(link2); >> cell.setCellStyle(hlink_style); >> >> FileOutputStream out = new >> FileOutputStream("hyperinks.xls"); >> wb.write(out); >> out.close(); >> } >> >> The hyperlink to file and hyperlink to other sheet does not work. >> >> Is this a bug or I am missing something? >> >> Thanks! >> > > -- View this message in context: http://www.nabble.com/Hyperlink-problem-in-POI-3.5-beta-5-tp24035177p24040709.html Sent from the POI - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: user-unsubscr...@poi.apache.org For additional commands, e-mail: user-h...@poi.apache.org