toanqlcn
Thành viên mới
![](/diendan/data/PhoToDanhHieu/gold.gif)
- Tham gia
- 24/2/08
- Bài viết
- 22
- Được thích
- 17
- Giới tính
- Nam
Lot của linh kiện ở cột A, viết thử tục tìm ngày sản xuất ở cột B
Ngày sản xuất trong LOT là GXX##YMDD#
Y 1 ký tự cuổi của năm
M tháng 1 ký tự, X=10, Y=11, Z=12
Ngày sản xuất không được lơn hơn ngày hiện tại.
![1627634447050.png 1627634447050.png](https://www.giaiphapexcel.com/diendan/data/attachments/220/220315-6016cfdba4d672c37fb5e77809e1b1fe.jpg?hash=YBbP26TWcs)
Code được viết trên Excel 365 on the web
Ngày sản xuất trong LOT là GXX##YMDD#
Y 1 ký tự cuổi của năm
M tháng 1 ký tự, X=10, Y=11, Z=12
Ngày sản xuất không được lơn hơn ngày hiện tại.
![1627634447050.png 1627634447050.png](https://www.giaiphapexcel.com/diendan/data/attachments/220/220315-6016cfdba4d672c37fb5e77809e1b1fe.jpg?hash=YBbP26TWcs)
Code được viết trên Excel 365 on the web
JavaScript:
function main(workbook: ExcelScript.Workbook) {
let selectedSheet = workbook.getActiveWorksheet();
var i = 2; //Begin row
var TTSX="";
let dc = selectedSheet.getUsedRange().getRowCount(); //Last row
while (i <= dc) {
TTSX = ProductionDate(selectedSheet.getRange("A" + i).getValue());
selectedSheet.getRange("B" + i).setValues(TTSX);
i++;
}
}
//Ham tu tao
public function ProductionDate(Lot: string) {
var nam = "";
var thang = "";
var ngay = "";
var d = new Date();
var n = (d.getFullYear() - d.getFullYear() % 10) / 10;
nam = n + Lot.slice(5, 6);
if (nam - d.getFullYear() > 0) {
nam = nam - 10;
}
thang = Lot.slice(6, 7);
switch (thang) {
case "X": {
thang = "10";
break;
}
case "Y": {
thang = "11";
break;
}
case "Z": {
thang = "12";
break;
}
default: {
thang = "0" + thang;
}
}
ngay = Lot.slice(7, 9);
//Check Date
var ss = new Date(nam + "/" + thang + "/" + ngay);
if (ss > d) {
nam = nam - 10;
}
return (nam + thang + ngay);
}