עבור לספרייה לעבודה עם מסמכי Excel XLSX

ממשק API של קוד פתוח עבור Go תומך ביצירת גיליונות אלקטרוניים של Microsoft Excel XLSX, ניהול גליונות עבודה, טיפול בשורות ועמודות בגליונות עבודה באמצעות Go API.

ספריית xlsx מספקת דרך מהירה ואמינה לעבודה עם קבצי Microsoft Excel באמצעות Go. הספרייה עוזרת לפשט את הקריאה והכתיבה של פורמט קובץ Excel XLSX. פורמט קובץ XLSX הוצג בשנת 2007 ומשתמש בתקן Open XML שהותאם על ידי מיקרוסופט עוד בשנת 2000. הספרייה היא בקוד פתוח וזמינה תחת רישיון BSD-3-Clause.

ספריית הקוד הפתוח xlsx כללה תמיכה במספר תכונות חשובות הקשורות ליצירה ומניפולציה של מסמכי Microsoft Excel כגון יצירת קובץ XlSX חדש, פתיחת קבצי Excel קיימים, גישה לגיליונות העבודה שלך, הוספת גליונות עבודה חדשים, ניהול שורות ועמודות בתוך גליון עבודה, הוספת תאים, קבלת תא משורה, עיצוב תאים, החלת סגנונות על תאים, תמיכה בטווחים בעלי שם ועוד.

Previous Next

תחילת העבודה עם Xlsx2Go

הדרך המומלצת להתקין xlsx היא מ-GitHub, אנא השתמש בפקודה הבאה להתקנה חלקה.

התקן xlsx דרך GitHub

go get https://github.com/tealeg/xlsx.git

יצירת קבצי XLSX חדשים באמצעות ספריית Go

ספריית הקוד הפתוח xlsx מעניקה למפתחי תוכנה את היכולת ליצור קובץ XLSX ריק חדש מאפס באמצעות כמה פקודות Go. המפתחים יכולים להשתמש בפונקציה החדשה NewFile() כדי ליצור קובץ חדש. לאחר יצירתו תוכלו להוסיף בקלות תוכן חדש לחוברת העבודה. אתה יכול להוסיף גיליון חדש או להוסיף גיליון קיים בקלות. לאחר היצירה והעבודה הושלמה, אנא שמור את עבודתך, מומלץ לסגור() את הגיליון.

צור ערוך קובץ LS Excel באמצעות Go API

// Demonstrates how to create/open/save XLSX files
func Example_files() {
	// Create a new XLSX file
	xl := xlsx.New()
	// Open the XLSX file using file name
	xl, err := xlsx.Open("./test_files/example_simple.xlsx")
	if err != nil {
		log.Fatal(err)
	}
	defer xl.Close()
	// Open the XLSX file using file handler
	zipFile, err := os.Open("./test_files/example_simple.xlsx")
	if err != nil {
		log.Fatal(err)
	}
	xl, err = xlsx.Open(zipFile)
	if err != nil {
		log.Fatal(err)
	}
	// Update the existing XLSX file
	err = xl.Save()
	if err != nil {
		log.Fatal(err)
	}
	// Save the XLSX file under different name
	err = xl.SaveAs("new_file.xlsx")
	if err != nil {
		log.Fatal(err)
	}
}

גישה וקרא קבצי XLSX

ספריית הקוד הפתוח xlsx סיפקה קבוצה של פונקציות המאפשרות למפתחים לגשת לפתוח ולקרוא קובץ גיליון אלקטרוני XLSX קיים בתוך יישומי Go משלהם. אתה יכול גם לגשת בקלות לגיליונות של חוברת עבודה עם רק כמה פקודות Go. מפתחים יכולים גם לגשת לגיליון מסוים לפי בחירתם בקלות.

גישה קרא קובץ Excel באמצעות ספריית Go

func Example_access() {
	xl, err := xlsx.Open("./test_files/example_simple.xlsx")
	if err != nil {
		log.Fatal(err)
	}
	defer xl.Close()
	// Get sheet by 0-based index
	sheet := xl.Sheet(0)
	// Get cell by 0-based indexes
	cell := sheet.Cell(13, 27)
	fmt.Println(cell.Value())
	// Get cell by reference
	cell = sheet.CellByRef("N28")
	fmt.Println(cell.Value())
	// Get row by 0-based index
	row := sheet.Row(9)
	fmt.Println(strings.Join(row.Values(), ","))
	// Get cell of row at 0-based col index
	cell = row.Cell(0)
	fmt.Println(cell.Value())
	// Get col by 0-based index
	col := sheet.Col(3)
	fmt.Println(strings.Join(col.Values(), ","))
	// Get cell of col at 0-based row index
	cell = col.Cell(0)
	fmt.Println(cell.Value())
	// Get range by references
	area := sheet.RangeByRef("D10:H13")
	fmt.Println(strings.Join(area.Values(), ","))
}

טיפול בשורות ובעמודות בגיליונות עבודה

תאים הם עמוד השדרה של גליון עבודה של Excel. גליון עבודה מורכב מתאים המאורגנים בשורות ובעמודות. ספריית xlsx מעניקה למפתחי תוכנה מגוון רחב של תכונות לטיפול בשורות ועמודות בתוך האפליקציות שלהם באמצעות פקודות Go. הוא תומך בהוספת שורות ועמודות חדשות, איטרציה של שורות ועמודות, מחיקת שורות ועמודות לא רצויות, הוספת תאים חדשים לשורה, קבלת ערך מתא, החלת עיצוב על מגוון תאים ועוד רבים.

הוספת עמודות רוס בגליון עבודה של Excel באמצעות ספריית Go

func Example_insert() {
	xl, err := xlsx.Open("./test_files/example_simple.xlsx")
	if err != nil {
		log.Fatal(err)
	}
	defer xl.Close()
	sheet := xl.Sheet(0)
	fmt.Println(sheet.Dimension())
	fmt.Println(strings.Join(sheet.Col(3).Values(), ","))
	// Insert a new col
	sheet.InsertCol(3)
	fmt.Println(sheet.Dimension())
	fmt.Println(strings.Join(sheet.Col(3).Values(), ","))
	fmt.Println(strings.Join(sheet.Col(4).Values(), ","))
	// Insert a new row
	fmt.Println(strings.Join(sheet.Row(9).Values(), ","))
	sheet.InsertRow(3)
	fmt.Println(sheet.Dimension())
	fmt.Println(strings.Join(sheet.Row(9).Values(), ","))
	fmt.Println(strings.Join(sheet.Row(10).Values(), ","))
}

החל סגנונות ועיצוב

הספרייה החינמית xlsx סיפקה מספר פונקציות חשובות המאפשרות למפתחי תוכנה להחיל עיצוב וסגנונות על הגיליונות האלקטרוניים שלהם בקלות. סגנונות מספקים פריסה וקישוט של תאים כמו גופן, צבע, יישור תוכן, גודל גופן, מילוי וכו'. אתה יכול בקלות להחיל את הסגנון על מגוון תאים עם כמה שורות קוד בלבד. אתה רק צריך ליצור סגנון פעם אחת ולעשות בו שימוש חוזר בעת הצורך. אתה יכול גם להחיל פורמטים של מספרים ותאריך עבור תאים.

Apping Styles ועיצוב קובץ Excel באמצעות ספריית Go

gfunc Example_formatting() {
	xl, err := xlsx.Open("./test_files/example_simple.xlsx")
	if err != nil {
		log.Fatal(err)
	}
	defer xl.Close()
	// Create a new format for a bold font with red color and yellow solid background
	redBold := styles.New(
		styles.Font.Bold,
		styles.Font.Color("#ff0000"),
		styles.Fill.Background("#ffff00"),
		styles.Fill.Type(styles.PatternTypeSolid),
	)
	// Add formatting to xlsx
	styleID := xl.AddStyles(redBold)
	sheet := xl.Sheet(0)
	// Set formatting for cell
	sheet.CellByRef("N28").SetStyles(styleID)
	// Set DEFAULT formatting for row. Affects cells not yet allocated in the row.
	// In other words, this style applies to new cells.
	sheet.Row(9).SetStyles(styleID)
	// Set DEFAULT formatting for col. Affects cells not yet allocated in the col.
	// In other words, this style applies to new cells.
	sheet.Col(3).SetStyles(styleID)
	//set formatting for all cells in range
	sheet.RangeByRef("D10:H13").SetStyles(styleID)
}
 עִברִית