@@ -140,17 +140,6 @@ function SearchBox<T extends string>({ | |||||
const formattedDate = date.replace(/-/g, '/'); // Change format to YYYY/MM/DD | const formattedDate = date.replace(/-/g, '/'); // Change format to YYYY/MM/DD | ||||
XLSX.utils.sheet_add_aoa(worksheet, [[formattedDate]], { origin: cellAddress }); | XLSX.utils.sheet_add_aoa(worksheet, [[formattedDate]], { origin: cellAddress }); | ||||
// Calculate the maximum length of content in each column and set column width | |||||
const colWidths: number[] = []; | |||||
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1, defval: "", blankrows: true }) as (string | number)[][]; | |||||
jsonData.forEach((row: (string | number)[]) => { | |||||
row.forEach((cell: string | number, index: number) => { | |||||
const valueLength = cell.toString().length; | |||||
colWidths[index] = Math.max(colWidths[index] || 0, valueLength); | |||||
}); | |||||
}); | |||||
// Style for cell A1: Font size 16 and bold | // Style for cell A1: Font size 16 and bold | ||||
if (worksheet['A1']) { | if (worksheet['A1']) { | ||||
worksheet['A1'].s = { | worksheet['A1'].s = { | ||||
@@ -195,6 +184,17 @@ function SearchBox<T extends string>({ | |||||
lastRowOfFirstTable++; | lastRowOfFirstTable++; | ||||
} | } | ||||
// Calculate the maximum length of content in each column and set column width | |||||
const colWidths: number[] = []; | |||||
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1, defval: "", blankrows: true }) as (string | number)[][]; | |||||
jsonData.forEach((row: (string | number)[]) => { | |||||
row.forEach((cell: string | number, index: number) => { | |||||
const valueLength = cell.toString().length; | |||||
colWidths[index] = Math.max(colWidths[index] || 0, valueLength); | |||||
}); | |||||
}); | |||||
// Apply calculated widths to each column, skipping column A | // Apply calculated widths to each column, skipping column A | ||||
worksheet['!cols'] = colWidths.map((width, index) => { | worksheet['!cols'] = colWidths.map((width, index) => { | ||||
if (index === 0) { | if (index === 0) { | ||||
@@ -140,17 +140,6 @@ function SearchBox<T extends string>({ | |||||
const formattedDate = date.replace(/-/g, '/'); // Change format to YYYY/MM/DD | const formattedDate = date.replace(/-/g, '/'); // Change format to YYYY/MM/DD | ||||
XLSX.utils.sheet_add_aoa(worksheet, [[formattedDate]], { origin: cellAddress }); | XLSX.utils.sheet_add_aoa(worksheet, [[formattedDate]], { origin: cellAddress }); | ||||
// Calculate the maximum length of content in each column and set column width | |||||
const colWidths: number[] = []; | |||||
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1, defval: "", blankrows: true }) as (string | number)[][]; | |||||
jsonData.forEach((row: (string | number)[]) => { | |||||
row.forEach((cell: string | number, index: number) => { | |||||
const valueLength = cell.toString().length; | |||||
colWidths[index] = Math.max(colWidths[index] || 0, valueLength); | |||||
}); | |||||
}); | |||||
// Style for cell A1: Font size 16 and bold | // Style for cell A1: Font size 16 and bold | ||||
if (worksheet['A1']) { | if (worksheet['A1']) { | ||||
worksheet['A1'].s = { | worksheet['A1'].s = { | ||||
@@ -195,6 +184,17 @@ function SearchBox<T extends string>({ | |||||
lastRowOfFirstTable++; | lastRowOfFirstTable++; | ||||
} | } | ||||
// Calculate the maximum length of content in each column and set column width | |||||
const colWidths: number[] = []; | |||||
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1, defval: "", blankrows: true }) as (string | number)[][]; | |||||
jsonData.forEach((row: (string | number)[]) => { | |||||
row.forEach((cell: string | number, index: number) => { | |||||
const valueLength = cell.toString().length; | |||||
colWidths[index] = Math.max(colWidths[index] || 0, valueLength); | |||||
}); | |||||
}); | |||||
// Apply calculated widths to each column, skipping column A | // Apply calculated widths to each column, skipping column A | ||||
worksheet['!cols'] = colWidths.map((width, index) => { | worksheet['!cols'] = colWidths.map((width, index) => { | ||||
if (index === 0) { | if (index === 0) { | ||||
@@ -139,18 +139,7 @@ function SearchBox<T extends string>({ | |||||
const date = new Date().toISOString().split('T')[0]; // Format YYYY-MM-DD | const date = new Date().toISOString().split('T')[0]; // Format YYYY-MM-DD | ||||
const formattedDate = date.replace(/-/g, '/'); // Change format to YYYY/MM/DD | const formattedDate = date.replace(/-/g, '/'); // Change format to YYYY/MM/DD | ||||
XLSX.utils.sheet_add_aoa(worksheet, [[formattedDate]], { origin: cellAddress }); | XLSX.utils.sheet_add_aoa(worksheet, [[formattedDate]], { origin: cellAddress }); | ||||
// Calculate the maximum length of content in each column and set column width | |||||
const colWidths: number[] = []; | |||||
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1, defval: "", blankrows: true }) as (string | number)[][]; | |||||
jsonData.forEach((row: (string | number)[]) => { | |||||
row.forEach((cell: string | number, index: number) => { | |||||
const valueLength = cell.toString().length; | |||||
colWidths[index] = Math.max(colWidths[index] || 0, valueLength); | |||||
}); | |||||
}); | |||||
// Style for cell A1: Font size 16 and bold | // Style for cell A1: Font size 16 and bold | ||||
if (worksheet['A1']) { | if (worksheet['A1']) { | ||||
worksheet['A1'].s = { | worksheet['A1'].s = { | ||||
@@ -195,6 +184,17 @@ function SearchBox<T extends string>({ | |||||
lastRowOfFirstTable++; | lastRowOfFirstTable++; | ||||
} | } | ||||
// Calculate the maximum length of content in each column and set column width | |||||
const colWidths: number[] = []; | |||||
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1, defval: "", blankrows: true }) as (string | number)[][]; | |||||
jsonData.forEach((row: (string | number)[]) => { | |||||
row.forEach((cell: string | number, index: number) => { | |||||
const valueLength = cell.toString().length; | |||||
colWidths[index] = Math.max(colWidths[index] || 0, valueLength); | |||||
}); | |||||
}); | |||||
// Apply calculated widths to each column, skipping column A | // Apply calculated widths to each column, skipping column A | ||||
worksheet['!cols'] = colWidths.map((width, index) => { | worksheet['!cols'] = colWidths.map((width, index) => { | ||||
if (index === 0) { | if (index === 0) { | ||||
@@ -140,17 +140,6 @@ function SearchBox<T extends string>({ | |||||
const formattedDate = date.replace(/-/g, '/'); // Change format to YYYY/MM/DD | const formattedDate = date.replace(/-/g, '/'); // Change format to YYYY/MM/DD | ||||
XLSX.utils.sheet_add_aoa(worksheet, [[formattedDate]], { origin: cellAddress }); | XLSX.utils.sheet_add_aoa(worksheet, [[formattedDate]], { origin: cellAddress }); | ||||
// Calculate the maximum length of content in each column and set column width | |||||
const colWidths: number[] = []; | |||||
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1, defval: "", blankrows: true }) as (string | number)[][]; | |||||
jsonData.forEach((row: (string | number)[]) => { | |||||
row.forEach((cell: string | number, index: number) => { | |||||
const valueLength = cell.toString().length; | |||||
colWidths[index] = Math.max(colWidths[index] || 0, valueLength); | |||||
}); | |||||
}); | |||||
// Style for cell A1: Font size 16 and bold | // Style for cell A1: Font size 16 and bold | ||||
if (worksheet['A1']) { | if (worksheet['A1']) { | ||||
worksheet['A1'].s = { | worksheet['A1'].s = { | ||||
@@ -195,6 +184,17 @@ function SearchBox<T extends string>({ | |||||
lastRowOfFirstTable++; | lastRowOfFirstTable++; | ||||
} | } | ||||
// Calculate the maximum length of content in each column and set column width | |||||
const colWidths: number[] = []; | |||||
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1, defval: "", blankrows: true }) as (string | number)[][]; | |||||
jsonData.forEach((row: (string | number)[]) => { | |||||
row.forEach((cell: string | number, index: number) => { | |||||
const valueLength = cell.toString().length; | |||||
colWidths[index] = Math.max(colWidths[index] || 0, valueLength); | |||||
}); | |||||
}); | |||||
// Apply calculated widths to each column, skipping column A | // Apply calculated widths to each column, skipping column A | ||||
worksheet['!cols'] = colWidths.map((width, index) => { | worksheet['!cols'] = colWidths.map((width, index) => { | ||||
if (index === 0) { | if (index === 0) { | ||||
@@ -139,18 +139,7 @@ function SearchBox<T extends string>({ | |||||
const date = new Date().toISOString().split('T')[0]; // Format YYYY-MM-DD | const date = new Date().toISOString().split('T')[0]; // Format YYYY-MM-DD | ||||
const formattedDate = date.replace(/-/g, '/'); // Change format to YYYY/MM/DD | const formattedDate = date.replace(/-/g, '/'); // Change format to YYYY/MM/DD | ||||
XLSX.utils.sheet_add_aoa(worksheet, [[formattedDate]], { origin: cellAddress }); | XLSX.utils.sheet_add_aoa(worksheet, [[formattedDate]], { origin: cellAddress }); | ||||
// Calculate the maximum length of content in each column and set column width | |||||
const colWidths: number[] = []; | |||||
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1, defval: "", blankrows: true }) as (string | number)[][]; | |||||
jsonData.forEach((row: (string | number)[]) => { | |||||
row.forEach((cell: string | number, index: number) => { | |||||
const valueLength = cell.toString().length; | |||||
colWidths[index] = Math.max(colWidths[index] || 0, valueLength); | |||||
}); | |||||
}); | |||||
// Style for cell A1: Font size 16 and bold | // Style for cell A1: Font size 16 and bold | ||||
if (worksheet['A1']) { | if (worksheet['A1']) { | ||||
worksheet['A1'].s = { | worksheet['A1'].s = { | ||||
@@ -195,6 +184,17 @@ function SearchBox<T extends string>({ | |||||
lastRowOfFirstTable++; | lastRowOfFirstTable++; | ||||
} | } | ||||
// Calculate the maximum length of content in each column and set column width | |||||
const colWidths: number[] = []; | |||||
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1, defval: "", blankrows: true }) as (string | number)[][]; | |||||
jsonData.forEach((row: (string | number)[]) => { | |||||
row.forEach((cell: string | number, index: number) => { | |||||
const valueLength = cell.toString().length; | |||||
colWidths[index] = Math.max(colWidths[index] || 0, valueLength); | |||||
}); | |||||
}); | |||||
// Apply calculated widths to each column, skipping column A | // Apply calculated widths to each column, skipping column A | ||||
worksheet['!cols'] = colWidths.map((width, index) => { | worksheet['!cols'] = colWidths.map((width, index) => { | ||||
if (index === 0) { | if (index === 0) { | ||||
@@ -140,17 +140,6 @@ function SearchBox<T extends string>({ | |||||
const formattedDate = date.replace(/-/g, '/'); // Change format to YYYY/MM/DD | const formattedDate = date.replace(/-/g, '/'); // Change format to YYYY/MM/DD | ||||
XLSX.utils.sheet_add_aoa(worksheet, [[formattedDate]], { origin: cellAddress }); | XLSX.utils.sheet_add_aoa(worksheet, [[formattedDate]], { origin: cellAddress }); | ||||
// Calculate the maximum length of content in each column and set column width | |||||
const colWidths: number[] = []; | |||||
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1, defval: "", blankrows: true }) as (string | number)[][]; | |||||
jsonData.forEach((row: (string | number)[]) => { | |||||
row.forEach((cell: string | number, index: number) => { | |||||
const valueLength = cell.toString().length; | |||||
colWidths[index] = Math.max(colWidths[index] || 0, valueLength); | |||||
}); | |||||
}); | |||||
// Style for cell A1: Font size 16 and bold | // Style for cell A1: Font size 16 and bold | ||||
if (worksheet['A1']) { | if (worksheet['A1']) { | ||||
worksheet['A1'].s = { | worksheet['A1'].s = { | ||||
@@ -198,6 +187,17 @@ function SearchBox<T extends string>({ | |||||
// Insert the first data form into the worksheet at the desired location | // Insert the first data form into the worksheet at the desired location | ||||
XLSX.utils.sheet_add_aoa(worksheet, firstTableData, { origin: { c: 0, r: lastRowOfFirstTable } }); | XLSX.utils.sheet_add_aoa(worksheet, firstTableData, { origin: { c: 0, r: lastRowOfFirstTable } }); | ||||
// Calculate the maximum length of content in each column and set column width | |||||
const colWidths: number[] = []; | |||||
const jsonData = XLSX.utils.sheet_to_json(worksheet, { header: 1, defval: "", blankrows: true }) as (string | number)[][]; | |||||
jsonData.forEach((row: (string | number)[]) => { | |||||
row.forEach((cell: string | number, index: number) => { | |||||
const valueLength = cell.toString().length; | |||||
colWidths[index] = Math.max(colWidths[index] || 0, valueLength); | |||||
}); | |||||
}); | |||||
// Apply calculated widths to each column, skipping column A | // Apply calculated widths to each column, skipping column A | ||||
worksheet['!cols'] = colWidths.map((width, index) => { | worksheet['!cols'] = colWidths.map((width, index) => { | ||||
if (index === 0) { | if (index === 0) { | ||||