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

Reply via email to