2016-08-22 8 views
3

Ich muss ein Excel mit Zusammenfassung Ergebnisse generieren. Die Ergebnisse sind in einer Liste enthalten. Einige der Elemente sind Werte und einige Links.Hinzufügen von Hyperlinks in einigen Zellen openpyxl

konnte ich die Excel mit dem richtigen Format erzeugen, aber den Hyperlink in einigen der Zellen

Mein Versuch nicht erzeugen: aus openpyxl Import Arbeitsmappe

from openpyxl.styles import PatternFill, Border, Side, Alignment, Protection, Font, Fill 
from openpyxl.cell import get_column_letter 

def summaryMCP(self,result): 

      c1=Column('Name',[result[0]]) 
      c2=Column('R2 check',[result[1]]) 
      c3=Column('Dir Diff.',[result[2]]) 

      c4=Column('CHI2 Sm-Sc',[result[3]])#Lets say this one is a hyperlink to one image png 
      c5=Column('Rose Sm-Sc',[result[4]]) 

      s=Sheet("MCP main results", [c1,c2,c3,c4,c5] 
      excelMCP([s],"/results.xlsx") 

def excelMCP(self, sheets,foname): 
      wb = Workbook() 
      ws = wb.active 
      #from here format options (a bit long) 

Meine Frage ist, kann ich festlegen, dass der Wert ist ein Hyperlink bei der Definition der Spalte in def summaryMCP und dann in ExcelMCP das Format der Verbindung ?? Und für den Fall, wie? Ich konnte es nicht finden, so weit

+0

Was ist eine 'Spalte'? Ich verstehe diesen Code nicht. –

+0

Spalte ist eine Kopfzeile. Es ist die erste Zeile in der Excel-Tabelle. Ergebnis sind die Werte (eine Zeile). result [Zahl] ist jede Zelle in der Reihe – gis20

+0

Ja, aber es ist kein openpyxl Objekt, also fragst du nach einem unbekannten. –

Antwort

3

Wenn wollen direkt in Hyperlink-Funktion verwenden Excel integrierten, können Sie folgendes Format als Link:

'=HYPERLINK("{}", "{}")'.format(link, "Link Name")

z.B. ws.cell(row=1, column=1).value = '=HYPERLINK("{}", "{}")'.format(link, "Link Name")

3

Versuchen Sie folgendes:

sheet['A1'].hyperlink = "http://stackoverflow.com" 
sheet['A1'].value="StackOverflow" 

In meinem Versuch dieses Add nicht die Formatierung, die Excel mit einem Hyperlink setzt aber die Zellinhalte sind mehr wie die Excel Hyperlink-Zelle als ich mit dem HYPERLINK-Tag bekommen.

+0

Wenn Sie die Formatierung benötigen, müssen Sie den richtigen benannten Stil hinzufügen. –

Verwandte Themen