סקירת תכונות

סקירת תכונות

Aspose.Cells FOSS עבור API של Go מתמקד ב-Workbook, Worksheet, Cells, ו-Cell. מדריך זה מסביר את היכולות האחרות של הספרייה: עיצוב, אימות נתונים, טבלאות, תמונות, וקראי זרם לקבצים גדולים.


עיצוב תא

קבץ את ההגדרות של Font, Fill, Alignment ו-Border לתוך Style שניתן להשתמש בו מחדש, ואז החל אותו על תא באמצעות Cell.SetStyle:

wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]

boldStyle := cells_foss.NewStyle()
boldStyle.Font.Bold = true
boldStyle.Font.Size = 12

highlightStyle := cells_foss.NewStyle()
highlightStyle.Font.Color = "FFFFFFFF"
highlightStyle.Font.Bold = true
highlightStyle.Fill = &cells_foss.Fill{
	Type:  cells_foss.FillTypeSolid,
	Color: "FF4472C4",
}

cell, _ := ws.Cells().Get("A1")
cell.SetStyle(boldStyle)

Alignment שולט ב-Horizontal, Vertical, ו-WrapText; Border שולט ב-Top, Bottom, Left, ו-Right של נראות הכללים בנוסף ל-Color.


אימות נתונים

Worksheet.AddDataValidation מצרף כלל אימות לטווח תאים. המבנה DataValidation מכיל את הכלל Type, ערך אחד או שני ערכי Formula, ושדות הודעת שגיאה:

wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]

dv := &cells_foss.DataValidation{
	Type:             cells_foss.DataValidationTypeList,
	Formula1:         `"Apple,Banana,Cherry,Dragonfruit"`,
	AllowBlank:       true,
	ShowErrorMessage: true,
	ErrorTitle:       "Invalid Fruit",
	ErrorMessage:     "Please pick a fruit from the list.",
	ErrorStyle:       cells_foss.ErrorStyleStop,
}
ws.AddDataValidation("A2:A10", dv)

אימות טווח של מספרים שלמים משתמש ב-DataValidationTypeWhole עם Formula1/Formula2 כגבולות התחתון והעליון.


טבלאות

Worksheet.AddTable יוצר Table מובנה על פני טווח, עם שורת כותרת אופציונלית וסגנון טבלה בשם:

wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]

tbl := ws.AddTable("A1:F6")
tbl.HasHeaderRow = true
tbl.StyleName = "TableStyleMedium6"

קבל טבלה קיימת לפי שם באמצעות Worksheet.GetTable(name).


תמונות

Worksheet.AddPicture משבץ תמונה; Picture.SetAnchor(row, col) ממקם אותה:

wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
imageBytes := []byte{} // populate with real image bytes before use

pic := &cells_foss.Picture{Data: imageBytes, Format: "png"}
ws.AddPicture(pic)
pic.SetAnchor(5, 0)

שידור קבצים גדולים

StreamingReader קורא גיליון עבודה שורה אחרי שורה דרך callback, כך שגליון עבודה עם אלפי שורות לעולם לא צריך להיטען במלואו בזיכרון:

path := "outputfiles/large_workbook.xlsx"
sr := cells_foss.NewStreamingReader(path)
err := sr.ProcessRows("Sheet1", func(rowIdx int, cells map[string]string) error {
	// process one row at a time
	return nil
})
if err != nil {
	fmt.Printf("Error streaming: %v\n", err)
}

טיפים ושיטות מומלצות

  • השתמש ב-StreamingReader במקום טעינה מלאה של Workbook כאשר קובץ עשוי להכיל אלפי שורות ואתה צריך רק לקרוא, לא לשנות, אותו.
  • צור Style פעם אחת ושימוש בו מחדש במגוון תאים במקום לבנות אחד חדש לכל תא.
  • Cell.SetFormula שומר מחרוזת נוסחה במדויק — היא מוערכת על ידי Excel או LibreOffice בעת הפתיחה, ולא על ידי הספרייה בזמן השמירה.
  • בדוק את ערך החזרה של error מ-Save, AddDataValidation, וקוראי/כתבי CSV — קלט/פלט של גיליון אלקטרוני יכול להיכשל בנתיבים לא חוקיים או קלט שגוי.

בעיות נפוצות

IssueCauseתיקון
ערך התא אינו נראה לאחר Setהתייחסות לגיליון הלא נכון או להפניה לתא מחוץ לטווחאשר את האינדקס Worksheet וודא שהפניה בסגנון A1 תואמת לתא הרצוי
הנוסחה מוצגת כטקסט גולמי במקום לחישובהספרייה שומרת רק את מחרוזת הנוסחה; היא אינה מחשבת נוסחאותפתח את הקובץ ב-Excel או ב-LibreOffice, שמבצעים את החישוב עם הפתיחה
אימות נתונים אינו נראה ב-Excelאימות נוסף לטווח שאינו כולל את התא היעדאשר שמחרוזת הטווח (לדוגמה "A2:A10") מכסה את התאים שאתה מצפה לאמת

FAQ

האם הספרייה מבצעת הערכת נוסחאות בעצמה?

מספר Cell.SetFormula/GetFormula מאחסנים מחרוזת נוסחה ש-Excel או LibreOffice מפרשים כאשר הקובץ נפתח.

האם אני יכול לבצע stream-write של ספרי עבודה גדולים, ולא רק stream-read שלהם?

StreamingReader מכסה קריאות ב-stream. כתיבת ספרי עבודה גדולים כיום עוברת דרך ה-Workbook/Worksheet API הסטנדרטי בזיכרון.

האם AddTable מיישם auto-filter אוטומטית?

זה לא מאומת בממשק API הנוכחי — רק HasHeaderRow ו-StyleName מתועדים כשדות Table. בדקו מול קובץ .xlsx שנוצר אם זה רלוונטי למקרה השימוש שלכם.


סיכום API Reference

מחלקה / שיטהתיאור
Workbook.NewWorkbook / Saveצור ושמור חוברת עבודה
Worksheet.Cellsגש לאוסף התאים של גיליון עבודה
Cells.Get / Set / Remove / Allקרא, כתוב, הסר, וספור תאים
Cell.SetStyle / SetFormula / GetFormulaהחל עיצוב ונוסחאות על תא
Style, Font, Fill, Alignment, Borderצור עיצוב תאים לשימוש חוזר
Worksheet.AddDataValidationהצמד כלל אימות לטווח תאים
Worksheet.AddTable / GetTableצור ושלוף טווחי טבלאות מובנים
Worksheet.AddPicture / Picture.SetAnchor(row, col)הטמע ומקם תמונות
StreamingReader.ProcessRowsהזרם גיליון עבודה שורה אחר שורה
Workbook.ExportToCSV / ImportFromCSVהמרה בין XLSX ל-CSV
Workbook.SetPassword / VerifyPasswordלהגן ולבדוק סיסמת חוברת עבודה

ראה גם

 עברית