我之前未成功发布此问题。
我有几行内容使一个用户菜单从exceljs中获取数据。
1-如何在此函数中放置条件,以使所有行进入菜单?看起来switch(input)不接受循环。
逻辑是:*阅读costumers.xlsx以获取所有客户。*将所有客户作为菜单选项循环播放。*选择后,将打开另一个以所选客户名称命名的xlsx文件即:1-Costumer12-Costumer2如果我选择1,我将打开costumer1.xlsx
2-如何进行选择并作为字符串传递以打开xlsx?
wb_costumers.xlsx.readFile('costumers.xlsx').then(function(){
sh_costumers = wb_costumers.getWorksheet("Sheet1");
var ic = 2;
while (ic <= sh_costumers.rowCount){
console.log("Row " + sh_costumers.getRow(ic).getCell(1) + " - " + sh_costumers.getRow(ic).getCell(2));
ic++;
}
});
function processChoice(input){
return new Promise(function(resolve, reject) {
var error = undefined;
var func;
switch(input){
case sh_costumers.getRow(2).getCell(1).text :
func = addPreset;
break;
经过一些研究,我发现了一些有关提示(npm安装提示)的信息。
现在我可以在xlsx文件中读取我的客户配置。
关于工作簿costumers.xlsx,我有两列:
cell1 = idcell2 =顾客的名字
在工作簿上,check_(顾客的名字).xlsx,我有想要放置在什么地方的信息。
这是我的代码。
const prompt = require('prompt');
var Excel = require('exceljs');
var wb = new Excel.Workbook();
var wbc = new Excel.Workbook();
prompt.start();
var ic = 1;
wbc.xlsx.readFile('costumers.xlsx').then(function(){
shc = wbc.getWorksheet("Sheet1");
while (ic <= shc.rowCount){
console.log(shc.getRow(ic).getCell(1).value +" - "+ shc.getRow(ic).getCell(2).value);
ic++;
}
});
prompt.get(['costumer'], function (err, result) {
if (err) { return onErr(err); }
var costumer = shc.getRow(result.costumer).getCell(2).value;
wb.xlsx.readFile('check_'+costumer+'.xlsx').then(function(){
sh = wb.getWorksheet("Sheet1");
console.log(sh.getRow(2).getCell(3).value);
});
});
function onErr(err) {
console.log(err);
return 1;
}