我成功地编写了将html表单数据作为单个excel行提交的代码。但是在我的html表单中,我想提交多个数据,这些数据应该附加到excel的单个单元格中,但数据的第二部分应该以同一单元格中的新行开头。就像(ALT + 输入操作)。我的html代码如下。
索引.html
{{template "header"}}
<form method="POST">
<label for="name">NAME</label>
<input type="text" id="name" name="name">
<br style="mso-data-placement:same-cell;">
<label for="gender">GENDER</label>
<input type="text" id="gender" name="gender">
<br>
<label for="age">AGE</label>
<input type="text" id="age" name="age">
<br>
<input type="submit">
</form>
<br>
我尝试使用“style=”mso-data-placement:same-cell;“,但它无济于事。
我的golang代码如下。
func datasubmit(w http.ResponseWriter, req *http.Request) {
nm := req.FormValue("name")
ge := req.FormValue("gender")
ag := req.FormValue("age")
var data = M{"Name": nm, "GENDER": ge, "AGE": ag} // i have used map type M map[string]interface{}
tpl.ExecuteTemplate(w, "index.gohtml", data)
f, err := excelize.OpenFile("./Book99.xlsx")
if err != nil {
fmt.Println(err)
return
}
sheetName := f.GetSheetName(0)
fmt.Println(sheetName)
rows, err := f.GetRows(sheetName)
rlast := len(rows)
fmt.Println(rows)
fmt.Println(rlast)
f.SetCellValue(sheetName, fmt.Sprintf("A%d", rlast+1), data["Name"])
f.SetCellValue(sheetName, fmt.Sprintf("B%d", rlast+1), data["GENDER"])
f.SetCellValue(sheetName, fmt.Sprintf("C%d", rlast+1), data["AGE"])
err = f.SaveAs("./Book99.xlsx")
if err != nil {
fmt.Println(err)
}
}
你能指导我打破第一个单元格与多个数据从新行开始。ex jim;jam ==> jim 既在单个单元格中,又在 excel 中用新行卡住。
哆啦的时光机
慕森王
相关分类