Hvordan søke fet stil til et bestemt ord i Excel-filen ved hjelp av Python?

stemmer
3

Jeg bruker pyexceleratorPython-modul for å generere Excel-filer. Jeg ønsker å bruke fet stil til en del av celletekst, men ikke til hele cellen. Hvordan gjøre det?

Publisert på 20/09/2008 klokken 11:20
kilden bruker
På andre språk...                            


2 svar

stemmer
1

Dette er et eksempel fra Excel dokumentasjon:

With Worksheets("Sheet1").Range("B1")
    .Value = "New Title"
    .Characters(5, 5).Font.Bold = True
End With

Så Tegn eiendom cellen du ønsker å manipulere er svaret på spørsmålet ditt. Det er brukt som tegn ( start , lengde ).

PS: Jeg har aldri brukt modulen i spørsmålet, men jeg har brukt Excel COM automatisering i python skript. Tegnene Eiendommen er tilgjengelig ved hjelp win32com.

Svarte 20/09/2008 kl. 11:54
kilden bruker

stemmer
2

Funnet eksempel her: generere en Excel-formatert fil Høyre i Python

Legg merke til at du gjør en skrift objekt og deretter gi det til en stil objekt, og deretter gi den stilen objekt når du skriver til arket:

import pyExcelerator as xl

def save_in_excel(headers,values):
    #Open new workbook
    mydoc=xl.Workbook()
    #Add a worksheet
    mysheet=mydoc.add_sheet("test")
    #write headers
    header_font=xl.Font() #make a font object
    header_font.bold=True
    header_font.underline=True
    #font needs to be style actually
    header_style = xl.XFStyle(); header_style.font = header_font
    for col,value in enumerate(headers):
        mysheet.write(0,col,value,header_style)
    #write values and highlight those that match my criteria
    highlighted_row_font=xl.Font() #no real highlighting available?
    highlighted_row_font.bold=True
    highlighted_row_font.colour_index=2 #2 is red,
    highlighted_row_style = xl.XFStyle(); highlighted_row_style.font = highlighted_row_font
    for row_num,row_values in enumerate(values):
        row_num+=1 #start at row 1
        if row_values[1]=='Manatee':
            for col,value in enumerate(row_values):
                #make Manatee's (sp) red
                mysheet.write(row_num,col,value,highlighted_row_style)
        else:
            for col,value in enumerate(row_values):
                #normal row
                mysheet.write(row_num,col,value)
    #save file
    mydoc.save(r'C:testpyexel.xlt')

headers=['Date','Name','Localatity']
data=[
['June 11, 2006','Greg','San Jose'],
['June 11, 2006','Greg','San Jose'],
['June 11, 2006','Greg','San Jose'],
['June 11, 2006','Greg','San Jose'],
['June 11, 2006','Manatee','San Jose'],
['June 11, 2006','Greg','San Jose'],
['June 11, 2006','Manatee','San Jose'],
]

save_in_excel(headers,data)
Svarte 20/09/2008 kl. 21:10
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more