برو به API برای مدیریت صفحات گسترده Microsoft Excel XLSX
کتابخانه Pure Go که از ایجاد، قالببندی و دستکاری صفحهگسترده MS Excel XLSX به راحتی از طریق Go API منبع باز پشتیبانی میکند.
Xlsx2Go یک کتابخانه منبع باز خالص Go است که راه بسیار آسانی را برای کار با صفحات گسترده Microsoft Excel XLSX با استفاده از دستورات زبان Go ارائه می دهد. این کتابخانه بسیار پایدار است و میتواند عملیات سریع انجام دهد و راه بسیار مطمئنی برای کار با صفحه گسترده XLSX با استفاده از Golang ارائه میکند. تنها با چند خط کد، می توانید چندین عملیات مربوط به ایجاد صفحه گسترده، قالب بندی و دستکاری را مدیریت کنید.
کتابخانه Xlsx2Go از چندین ویژگی مهم مرتبط با پردازش صفحه گسترده اکسل پشتیبانی می کند، مانند ساخت صفحه گسترده جدید، باز کردن، اصلاح یا حذف یک فایل صفحه گسترده موجود، افزودن یک صفحه اکسل جدید به کتاب کار، افزودن سلول های جدید، قالب بندی سلول اکسل. ، اعتبارسنجی داده های سلول ها، پشتیبانی از قالب بندی شرطی، ادغام و عدم ادغام سلول های کاربرگ، تصاویر و عکس های جاسازی شده، کپی کاربرگ ها، کپی ردیف ها یا ستون ها، و موارد دیگر.
شروع کار با Xlsx2Go
روش توصیه شده برای نصب Xlsx2Go در پروژه خود استفاده از GitHub است. لطفا از دستور زیر برای نصب راحت استفاده کنید.
Xlsx2Go را از طریق GitHub نصب کنید
go get https://github.com/LucienLS/xlsx2go.git
صفحه گسترده XLSX را از طریق Go API ایجاد کنید
کتابخانه منبع باز Xlsx2Go به برنامه نویسان رایانه اجازه می دهد تا با استفاده از دستورات Go یک صفحه گسترده Excel XLSX را در داخل برنامه های خود ایجاد کنند. همچنین میتوانید صفحهگسترده موجود را به راحتی باز کنید، تغییر دهید یا حذف کنید. همچنین میتوانید از چندین ویژگی مهم مانند درج ردیفها و ستونهای جدید در یک صفحه، تنظیم مقدار پیشفرض یک سلول، اعمال قالببندی برای محدودهای از سلولها و موارد دیگر استفاده کنید.
فایل اکسل XLSX را از طریق Go API ایجاد و اصلاح کنید
func main() {
// 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)
}
}
مدیریت سلول ها و ردیف ها در کاربرگ اکسل
کتابخانه رایگان Xlsx2Go چندین ویژگی مهم مربوط به مدیریت سلولها و ردیفها را در صفحات گسترده اکسل گنجانده است. شما می توانید به راحتی ردیف ها و سلول های جدید را وارد کنید، ردیف ها و سلول ها را ادغام کنید، یک نظر به یک سلول اکسل اضافه کنید، تمام سلول ها را در یک ردیف دریافت کنید، سلول های جدید ایجاد کنید، محدوده ای از سلول ها را انتخاب کنید، استایل ها را در محدوده ای از سلول ها اعمال کنید، یک لینک اضافه کنید. به یک سلول، زمان و تاریخ را در یک سلول تنظیم کنید، و بسیاری موارد دیگر.
در برنامه های Go، ستون ها و ردیف ها را در صفحه گسترده قرار دهید
func main() {
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(), ","))
}
سطرها، ستونها و برگهها را در یک کاربرگ اضافه کنید
گاهی اوقات یک کاربر یا یک سازمان چندین کاربرگ با ساختارهای مشابه (ردیف ها و ستون ها) دارد و می خواهد اطلاعات را در یک کاربرگ بزرگ ادغام کند. ویژگی الحاق به توسعه دهندگان کمک می کند تا یک کاربرگ یا چندین کاربرگ را به یک کاربرگ موجود اضافه کنند یا همه را در یک کاربرگ جدید ترکیب کنند. کتابخانه Xlsx2Go عملکردی را برای اضافه کردن ستونها، ردیفها و همچنین برگههای کاربرگ بهصورت برنامهای به آسانی فراهم کرده است.
سطرها، ستونها و برگهها را از طریق Go API اضافه کنید
func main() {
xl, err := xlsx.Open("./test_files/example_simple.xlsx")
if err != nil {
log.Fatal(err)
}
defer xl.Close()
sheet := xl.Sheet(0)
// To append a new col/row, simple request it - sheet will be auto expanded.
// E.g.: we have 14 cols, 28 rows.
fmt.Println(sheet.Dimension())
// Append 72 rows
sheet.Row(99)
fmt.Println(sheet.Dimension())
// Append 36 cols
sheet.Col(49)
fmt.Println(sheet.Dimension())
// Append 3 sheet
fmt.Println(strings.Join(xl.SheetNames(), ","))
xl.AddSheet("new sheet")
xl.AddSheet("new sheet")
xl.AddSheet("new sheet")
fmt.Println(strings.Join(xl.SheetNames(), ","))
}
قالب بندی صفحه گسترده را از طریق Go API مدیریت کنید
کتابخانه رایگان Xlsx2Go به توسعه دهندگان نرم افزار امکان می دهد تا با استفاده از دستورات Go، سبک هایی را برای قالب بندی صفحات گسترده خود اضافه کنند. توسعه دهندگان به راحتی می توانند یک قالب جدید برای تنظیم سبک فونت، رنگ فونت، رنگ پس زمینه و موارد دیگر ایجاد کنند. می توانید قالب بندی را برای طیف وسیعی از سلول ها و همچنین کل کاربرگ تنظیم کنید. همچنین میتوانید قالببندی پیشفرض برای سطر و همچنین یک ستون را به راحتی تنظیم کنید. به راحتی می توانید تصاویر و عکس ها را به یک کاربرگ اضافه کنید
از طریق Go API، قالب بندی را به صفحه گسترده اعمال کنید
func main() {
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)
}