Endüstriyel Vantilatör
import openpyxl
from openpyxl.styles import PatternFill, Font, Alignment, Border, Side
from openpyxl.utils import get_column_letterwb = openpyxl.Workbook()
ws = wb.active
ws.title = "Modeller Tablosu"headers = [
"MODELLER",
"DEBİ\n(m³/h)",
"BASINÇ\n(Toplam Statik)\n(pa)",
"FAN\nMODELİ",
"MOTOR\n(kW)",
"DEVİR\n(rpm)",
"SES\n(dBA)",
"IP SINIFI",
"ÇALIŞMA\nSICAKLIĞI\n( °C )",
"KABLO\nKESİTİ"
]ws.append(headers)
data = [
["P-SH-11T", "1000", "300", "7*7", "0,25", "1390", "74", "IP55", "-35 / 120 °C", "4 X 2,5"],
["P-SH-17T", "2000", "500", "7*7", "0,75", "1773", "79", "IP55", "-35 / 120 °C", "4 X 2,5"],
["P-SH-23T", "3000", "500", "9*9", "1,1", "1488", "80", "IP55", "-35 / 120 °C", "4 X 2,5"],
["P-SH-29T", "4000", "500", "9*9", "1,5", "1494", "84", "IP55", "-35 / 120 °C", "4 X 2,5"],
["P-SH-35T", "5000", "500", "10*10", "1,5", "1180", "85", "IP55", "-35 / 120 °C", "4 X 2,5"],
["P-SH-41T", "6000", "500", "12*12", "2,2", "1022", "88", "IP55", "-35 / 120 °C", "4 X 2,5"],
["P-SH-47T", "7000", "500", "12*12", "2,2", "999", "90", "IP55", "-35 / 120 °C", "4 X 2,5"],
["P-SH-53T", "8000", "500", "15*11", "2,2", "824", "88", "IP55", "-35 / 120 °C", "4 X 2,5"],
["P-SH-59T", "9000", "500", "15*15", "3", "854", "90", "IP55", "-35 / 120 °C", "4 X 2,5"],
["P-SH-65T", "10000", "500", "15*15", "3", "849", "93", "IP55", "-35 / 120 °C", "4 X 2,5"],
["P-SH-71T", "11000", "500", "18*18", "3", "723", "94", "IP55", "-35 / 120 °C", "4 X 2,5"],
["P-SH-77T", "12000", "500", "18*18", "3", "723", "92", "IP55", "-35 / 120 °C", "4 X 2,5"],
["P-SH-83T", "13000", "500", "18*18", "4", "717", "93", "IP55", "-35 / 120 °C", "4 X 2,5"],
["P-SH-89T", "14000", "500", "18*18", "4", "713", "93", "IP55", "-35 / 120 °C", "4 X 2,5"],
["P-SH-92T", "15000", "500", "450", "5,5", "733", "93", "IP55", "-35 / 120 °C", "4 X 2,5 / 3 x 2,5"],
["P-SH-98T", "16000", "500", "450", "5,5", "732", "97", "IP55", "-35 / 120 °C", "4 X 2,5 / 3 x 2,5"],
["P-SH-102T", "17000", "500", "450", "5,5", "734", "93", "IP55", "-35 / 120 °C", "4 X 2,5 / 3 x 2,5"],
["P-SH-107T", "18000", "500", "500", "5,5", "684", "93", "IP55", "-35 / 120 °C", "4 X 2,5 / 3 x 2,5"],
["P-SH-111T", "19000", "500", "500", "5,5", "684", "95", "IP55", "-35 / 120 °C", "4 X 2,5 / 3 x 2,5"],
["P-SH-115T", "20000", "500", "500", "5,5", "685", "93", "IP55", "-35 / 120 °C", "4 X 2,5 / 3 x 2,5"],
["P-SH-119T", "21000", "500", "500", "7,5", "687", "87", "IP55", "-35 / 120 °C", "3 X 4 / 4 X 4"],
["P-SH-123T", "22000", "500", "500", "7,5", "691", "87", "IP55", "-35 / 120 °C", "3 X 4 / 4 X 4"],
["P-SH-127T", "23000", "500", "560", "7,5", "605", "87", "IP55", "-35 / 120 °C", "3 X 4 / 4 X 4"],
["P-SH-131T", "24000", "500", "560", "7,5", "605", "87", "IP55", "-35 / 120 °C", "3 X 4 / 4 X 4"],
["P-SH-135T", "25000", "500", "560", "7,5", "606", "87", "IP55", "-35 / 120 °C", "3 X 4 / 4 X 4"],
["P-SH-139T", "26000", "500", "560", "7,5", "607", "87", "IP55", "-35 / 120 °C", "3 X 4 / 4 X 4"],
["P-SH-143T", "27000", "500", "560", "7,5", "609", "90", "IP55", "-35 / 120 °C", "3 X 4 / 4 X 4"],
["P-SH-147T", "28000", "500", "630", "7,5", "522", "93", "IP55", "-35 / 120 °C", "3 X 4 / 4 X 4"],
["P-SH-151T", "29000", "500", "630", "7,5", "520", "93", "IP55", "-35 / 120 °C", "3 X 4 / 4 X 4"],
["P-SH-154T", "30000", "500", "630", "11", "518", "90", "IP55", "-35 / 120 °C", "3 X 6 / 4 X 6"],
["P-SH-157T", "31000", "500", "630", "11", "517", "93", "IP55", "-35 / 120 °C", "3 X 6 / 4 X 6"],
["P-SH-160T", "32000", "500", "630", "11", "516", "91", "IP55", "-35 / 120 °C", "3 X 6 / 4 X 6"],
["P-SH-163T", "33000", "500", "630", "11", "516", "94", "IP55", "-35 / 120 °C", "3 X 6 / 4 X 6"],
["P-SH-166T", "34000", "500", "630", "11", "516", "91", "IP55", "-35 / 120 °C", "3 X 6 / 4 X 6"],
["P-SH-169T", "35000", "500", "710", "11", "474", "94", "IP55", "-35 / 120 °C", "3 X 6 / 4 X 6"],
["P-SH-172T", "36000", "500", "710", "11", "473", "93", "IP55", "-35 / 120 °C", "3 X 6 / 4 X 6"],
["P-SH-175T", "37000", "500", "710", "11", "473", "94", "IP55", "-35 / 120 °C", "3 X 6 / 4 X 6"],
["P-SH-178T", "38000", "500", "710", "11", "473", "96", "IP55", "-35 / 120 °C", "3 X 6 / 4 X 6"],
["P-SH-181T", "39000", "500", "710", "11", "472", "95", "IP55", "-35 / 120 °C", "3 X 6 / 4 X 6"],
["P-SH-184T", "40000", "500", "710", "11", "472", "96", "IP55", "-35 / 120 °C", "3 X 6 / 4 X 6"],
["P-SH-187T", "41000", "500", "710", "15", "473", "96", "IP55", "-35 / 120 °C", "3 X 6 / 4 X 6"],
["P-SH-190T", "42000", "500", "710", "15", "473", "87", "IP55", "-35 / 120 °C", "3 X 6 / 4 X 6"]
]for row in data:
ws.append(row)# Styling
thin_border = Border(left=Side(style='thin', color='A6A6A6'),
right=Side(style='thin', color='A6A6A6'),
top=Side(style='thin', color='A6A6A6'),
bottom=Side(style='thin', color='A6A6A6'))
grey_fill = PatternFill(start_color="D9D9D9", end_color="D9D9D9", fill_type="solid")
white_fill = PatternFill(start_color="FFFFFF", end_color="FFFFFF", fill_type="solid")for row_idx, row in enumerate(ws.iter_rows(min_row=1, max_row=ws.max_row, min_col=1, max_col=10), start=1):
for col_idx, cell in enumerate(row):
cell.border = thin_border
cell.alignment = Alignment(horizontal="center", vertical="center", wrap_text=True)
# Header styles
if row_idx == 1:
cell.font = Font(bold=True)
cell.fill = white_fill
else:
# Alternating rows
if row_idx % 2 == 0: # Data row 1, 3, 5... (Excel row 2, 4, 6...)
cell.fill = grey_fill
if col_idx == 0:
cell.font = Font(bold=True, color="000000") # Black
else:
cell.fill = white_fill
if col_idx == 0:
cell.font = Font(bold=True, color="C00000") # Red# Set column widths
col_widths = [14, 10, 16, 10, 10, 10, 10, 10, 16, 20]
for i, width in enumerate(col_widths, start=1):
ws.column_dimensions[get_column_letter(i)].width = widthwb.save("Fan_Modelleri_Tablosu.xlsx")
print("File generated successfully.")

