
Python - Kód na úpravu obsahu excel harka
Takže začal som využívať umelú inteligenciu Bing, a požiadal ju aby mi naprogramovala program na úpravu vnútornej štruktúry excel dokumentu, úpravu som vždy musel robiť ručne ale Bing mi vygeneroval funkčný program na úpravu vnútornej štruktúry excelu, ktorý naozaj funguje. Potom som ho požiadal o program na úpravu harkov dokumentu potrebujem iba prepísať hodnotu ListPribehy na Legendy a to v asi 270 dokumentoch. Ale tu som narazil na problém, vygenerovaný program poškodil excel súbory, boli ale zálohované v čom môže byť problém:
import os
import pandas as pd
def najdi_a_uprav_hodnoty_v_excel(adresar, stlpec_ListPribehy, novy_nazov):
novy_adresar = os.path.join(adresar, "Nova")
if not os.path.exists(novy_adresar):
os.makedirs(novy_adresar) # Vytvorenie priečinka "Nova", ak ešte neexistuje
for nazov_suboru in os.listdir(adresar):
if nazov_suboru.endswith('.xlsx'):
cesta_k_suboru = os.path.join(adresar, nazov_suboru)
df = pd.read_excel(cesta_k_suboru) # Načítanie Excelu do pandas DataFrame
if stlpec_ListPribehy in df.columns:
df[stlpec_ListPribehy] = df[stlpec_ListPribehy].str.replace("ListPribehy", "Legendy")
novy_nazov_suboru = os.path.join(novy_adresar, nazov_suboru)
df.to_excel(novy_nazov_suboru, index=False) # Uloženie DataFrame do nového súboru Excel
print(f"Hodnoty upravené v súbore: {cesta_k_suboru} -> {novy_nazov_suboru}")
# Nastavte cestu k adresáru, kde sa nachádzajú vaše súbory Excel
adresar_s_subormi = "E:/Test"
# Zadajte názov stĺpca "ListPribehy", ktorý chcete upraviť
stlpec_poviedky = "ListPribehy"
# Zadajte nový názov, na ktorý chcete upraviť hodnoty
novy_nazov = "Legendy"
# Spustite funkciu najdi_a_uprav_hodnoty_v_excel s požadovanými parametrami
najdi_a_uprav_hodnoty_v_excel(adresar_s_subormi, stlpec_poviedky, novy_nazov)
Program prepíše hodnoty ListPribehy na Legendy a upravené hárky uloží do priečinku E:/Test/Nova problém je že, výsledne excel sú poškodené, a formát je totálne vynulovaný a odkazy odstránené. Dúfal, som že to nemusím prepisovať ručne.
"ListPribehy" je nazev sloupce nebo hodnota, ktera se ve sloupci opakuje ve spouste radku?
Jinak definovana promenna se ti jmenuje stlpec_poviedky, ale v kodu pouzivas promennou stlpec_ListPribehy
Čo sa týka "stĺpca A" tak je to názov stĺpca "Názov ListPribehy docx" a pod ním sa nachádzajú odkazy na Príbehy. B-H obsahujú iba údaje o diele a autorovi. Čo sa týka "stĺpca I" tak názov stĺpca je "žáner" ale jeho hodnoty sú Nejaký žáner + ListPribehy (pr. Dobrodružné ListPribehy, Fantasy ListPribehy) a chcem zmeniť všetky výskyty ListPribehy na Legendy.