求大神帮忙。急。。。。我想创建excel文件。在创建sheet,可以创建多个sheet工作表。怎么确定要往我创建的sheet导入数据。
我想下面的代码怎么改。
func ReadXlsx(c []CmdbTest, SheetName string) error { //打开文件,如果文件不存在创建,存在就打开 path := "./cmdb_test.xlsx" b, err := PathExists(path) if err != nil { fmt.Sprintln(err) } if !b { file := xlsx.NewFile() err := file.Save(path) if err != nil { fmt.Println("创建xlsx文件发生错误") } } file, err := xlsx.OpenFile(path) if err != nil { fmt.Println("打开xlsx文件发生异常") } //判断结构体sheetName是否存在。 b, err = PathExists(SheetName) if err != nil { fmt.Sprintln(err) } if !b { //创建sheet alert := []string{"项目名称", "测试接口名称", "测试参数", "测试条数", "总耗时", "评均耗时", "最大耗时", "最小耗时"} file := xlsx.NewFile() sheet, _ := file.AddSheet(SheetName) row := sheet.AddRow() for _, a := range alert { row.AddCell().SetString(a) } err := file.Save(path) if err != nil { panic(err) } } //数据录入 for _, v := range c { ls := []string{v.PMName, v.InterfaceName, v.Type, v.TestNumber, v.SumTime, v.MeanTime, v.MaxTime, v.MinTime} //怎么才能确定sheet,向sheet内插入数据 //???????first := file.Sheet[SheetName] fmt.Println("xxxxxxxxxxx", first) row := first.AddRow() for _, r := range ls { cell := row.AddCell() cell.Value = r err = file.Save(path) if err != nil { fmt.Println("写入信息发生异常,文件正在使用") } } } return err }
已解决。。。。。