Skip to content

Commit 881c75c

Browse files
fix:Cannot paste date value from excel to date cell #471
1 parent c981381 commit 881c75c

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

src/lib/Functions/handlePaste.ts

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,16 @@ export function handlePaste(event: ClipboardEvent, state: State): State {
4141
.getData("text/plain")
4242
.replace(/(\r\n)$/, '')
4343
.split("\n")
44-
.map((line: string) => line.split("\t").map((t) => ({ type: "text", text: t, value: parseLocaleNumber(t) })));
44+
.map((line: string) => line.split("\t").map((t) => {
45+
const parsedDate = parseExcelDate(t);
46+
return parsedDate ? { type: "date", text: t, value: parsedDate.getTime() } : { type: "text", text: t, value: parseLocaleNumber(t) };
47+
}));
4548
}
4649
event.preventDefault();
4750
return { ...pasteData(state, pastedRows) };
4851
}
49-
52+
53+
function parseExcelDate(excelDate: string): Date | null {
54+
const timestamp = Date.parse(excelDate);
55+
return isNaN(timestamp) ? null : new Date(timestamp);
56+
}

0 commit comments

Comments
 (0)