DaddyNote

UK, Irish and EU money and travel rules, worked through step by step, with the date each figure was checked.

AI how-to notes · 2026-09-18 · last run 2026-09-18 · 한국어 원문

Merging several PDFs in the order you want on Windows — and whether anything built in can do it

One line summary

As far as we got, nothing that ships with Windows 11 will merge several PDFs into one file. Explorer attaches no Print command at all to a PDF, and Edge counts only the tab you are currently looking at, even with three tabs open. Opening them in Word and stringing them together does work, but our 10 pages became 13 and the text and borders changed. The only thing that kept the page count and the order intact was Python (pypdf).

Who this is for

Test environment

ItemValue
OSWindows 11 Home 25H2 (10.0.26200.9457)
ShellPowerShell 7 / Git Bash
Edge153.0.4234.32
Word16.0 (Build 16.0.20326)
Python3.12.10
Python packagespypdf 6.14.2, PyMuPDF 1.28.0
Test files3 dummy PDFs made for the test. No company material was used

The files we tested with

We made three PDFs with a big stamp on every page saying which file it is and which page of that file. That way the order can be counted by eye the moment they are merged.

FilePagesStamped on the pagesSize
Y1_A_표지.pdf (cover)2A-1, A-263,924 bytes
Y1_B_본문.pdf (body)5B-1 – B-565,899 bytes
Y1_C_별첨.pdf (appendix)3C-1, C-2, C-364,879 bytes

10 pages in total. That number is the yardstick for every result below.

First question — does anything built into Windows do it?

Selecting several files in Explorer and choosing Print

We dumped the command list Explorer attaches to each file type and compared PDF against the others.

PDF : 열기(O) | Notepad++로 편집 | 즐겨찾기에 추가(F) | ... | 속성(R)
PNG : 열기(O) | 바탕 화면 배경으로 설정(B) | 인쇄(P) | 오른쪽으로 회전(T) | ...
TXT : 열기(O) | 편집 | 인쇄 | ...

Those are the Korean context-menu entries — Open, Edit, Add to Favorites, Properties, Set as desktop background, Print, Rotate right. PNG and TXT have 「인쇄」 (Print); PDF does not. We did not separately check the menu that appears when several files are selected, but a command that isn't there for one file does not materialise because you selected several. On this PC the default program for PDFs is Edge (MSEdgePDF), and it registers only two commands, open and runas, so there is no print command to call. Forcing it from the command line stops in the same place.

> Start-Process -FilePath Y1_A_표지.pdf -Verb Print
오류: 이 작업을 하기 위해 지정된 파일로 아무 응용 프로그램도 연결되어 있지 않습니다.

The error says no application is associated with the specified file for this operation.

Change the default PDF program to another viewer and 「인쇄」 may well appear. But that means you installed that viewer. What happens when you select several files and print from there, we did not test.

Opening three of them as tabs in Edge and printing

We loaded all three PDFs as tabs in one Edge window and pressed Ctrl+P. The top of the print pane reads 「합계: 2 용지」 — total, 2 sheets of paper. Only the tab in front of us (A, 2 pages) was counted. Switching the printer to 「Microsoft Print to PDF」 changed nothing.

Three PDFs open as tabs in Edge while the print pane reports a total of only 2 sheets
Three PDFs open as tabs in Edge while the print pane reports a total of only 2 sheets

Handing them over together on the command line is blocked as well.

> msedge.exe --headless --disable-gpu --print-to-pdf=C:\...\합본.pdf --no-pdf-header-footer
    file:///C:/.../Y1_A_표지.pdf file:///C:/.../Y1_B_본문.pdf file:///C:/.../Y1_C_별첨.pdf

[0918/110125.664:ERROR:chrome\app\chrome_main.cc:321] Multiple targets are not supported in headless mode.
exit code=13   합본.pdf was never created

Pass a single file and it does finish with exit code 0 and does produce a file. That file is 1 page and 1,101 bytes, with 0 extractable characters, 0 images and 1 vector drawing. The 2 pages of the original are not in it. We did not dig into why.

Printing them one at a time through 「Microsoft Print to PDF」

With the window up, pressing Print brings up the 「다른 이름으로 프린터 출력 저장」 (Save Print Output As) dialog asking for a name, and typing a path drops one file there. We walked that procedure twice and that is what we got: printing only pages 3–5 of a 10-page document gave one file of 11,219 bytes, and printing a photo document in full gave one file of 1,641,339 bytes. One print, one file, and nowhere in the procedure is there a place to string files together.

The route that does work — opening them in Word and stringing them together

Word turns a PDF into an editable document. Insert the three PDFs one after another into a blank document, export back to PDF, and you have one file. Rather than clicking the menus, we had automation (COM) do the inserting (Selection.InsertFile) and the exporting (ExportAsFixedFormat) so we could measure the time and the page count.

InsertFile Y1_A_표지.pdf -> ok, 1.1 s, running page count = 5
InsertFile Y1_B_본문.pdf -> ok, 0.7 s, running page count = 10
InsertFile Y1_C_별첨.pdf -> ok, 0.7 s, running page count = 13
saved merged file = 62,721 bytes, 13 pages

10 pages became 13. Pages 1, 3 and 5 are blank.

The Word merge, 13 pages. Pages 1, 3 and 5 are blank and some pages have lost their borders
The Word merge, 13 pages. Pages 1, 3 and 5 are blank and some pages have lost their borders

Pulling the text out page by page and comparing it with the original, this is what had changed.

What we looked atOriginalAfter Word
Text lines on the first pagetwo lines, 「A 표지」 / 「A-1」one line 「A 표지 A-」 plus 「1」 on the next
Title line at the top of the B and C pages「B 본문」 / 「C 별첨」 presentgone
Vector drawings on page 1 of A112 on the pages holding A's content, 0 on the pages holding B's and C's
Largest type on the pagenot measured72 pt on pages B-1–B-4, 16 pt on B-5 and C-3 only

If counting pages matters, or if anything points at "item such-and-such on page such-and-such", this route is dangerous. Conversely, if the merged document has to be rewritten anyway, editing in Word and exporting to PDF again may be the easier path.

Keeping the page count and the order — pypdf

If Python is installed, this is the certain route. Installing is one line.

pip install pypdf

The merging code is short too. append tacks a whole file onto the end.

from pypdf import PdfWriter

w = PdfWriter()
for p in [r"C:\path\cover.pdf", r"C:\path\body.pdf", r"C:\path\appendix.pdf"]:
    w.append(p)
with open(r"C:\path\merged.pdf", "wb") as f:
    w.write(f)

The order in the list is the order in the result. We got 10 pages, with the page stamps intact.

A -> B -> C : 10 pages, 196,998 bytes
  A-1, A-2, B-1, B-2, B-3, B-4, B-5, C-1, C-2, C-3
C -> A -> B : 10 pages
  C-1, C-2, C-3, A-1, A-2, B-1, B-2, B-3, B-4, B-5
The pypdf merge, 10 pages. The order runs straight from A-1 to C-3
The pypdf merge, 10 pages. The order runs straight from A-1 to C-3

What happens to bookmarks

None of the three files had a single bookmark before the merge, and the result of append had none either. Nothing appears out of nowhere.

If the originals do have bookmarks, it is a different story. We put two on file B — 「B 1장」 (chapter 1, page 1) and 「B 3장」 (chapter 3, page 3) — and appended it after A. In the merged file they pointed at pages 3 and 5. A is 2 pages, so each moved down by two. The page numbers are corrected for you.

Adding a bookmark per file name while you merge makes things easy to find later.

from pypdf import PdfReader, PdfWriter
import os

w, start = PdfWriter(), 0
for p in [r"C:\path\cover.pdf", r"C:\path\body.pdf", r"C:\path\appendix.pdf"]:
    r = PdfReader(p)
    for pg in r.pages:
        w.add_page(pg)
    w.add_outline_item(os.path.splitext(os.path.basename(p))[0], start)
    start += len(r.pages)
with open(r"C:\path\merged.pdf", "wb") as f:
    w.write(f)
merged file 10 pages, 197,715 bytes
bookmarks : Y1_A_표지 -> p.1 / Y1_B_본문 -> p.3 / Y1_C_별첨 -> p.8

Because this code moves one page at a time with add_page, bookmarks that were in the originals do not come along. Moving B and its two bookmarks with add_page alone gave a merged file of 10 pages with no bookmarks at all. To keep both, pass a name to append. What came out was the original bookmarks nested one level under the per-file bookmark.

w.append(r"C:\path\Y1_A_표지.pdf", outline_item="표지")
w.append(r"C:\path\Y1_B_본문_책갈피.pdf", outline_item="본문")  # the file carrying 「B 1장」 and 「B 3장」
w.append(r"C:\path\Y1_C_별첨.pdf", outline_item="별첨")
merged file 10 pages, 198,133 bytes
  표지 -> p.1
  본문 -> p.3
      B 1장 -> p.3
      B 3장 -> p.5
  별첨 -> p.8

(The three labels we passed are the Korean words for cover, body and appendix.)

Where merging a whole folder gets the order wrong

Write it as "merge every PDF in this folder in name order" and there is one place it trips.

>>> sorted(["10_열번째.pdf", "2_두번째.pdf", "1_첫번째.pdf"])
['10_열번째.pdf', '1_첫번째.pdf', '2_두번째.pdf']

(The names mean tenth, second and first.) Because the comparison is on characters rather than numbers, 10_ comes before 1_. Rename them with padded digits and everything falls back into place.

>>> sorted(["10_열번째.pdf", "02_두번째.pdf", "01_첫번째.pdf"])
['01_첫번째.pdf', '02_두번째.pdf', '10_열번째.pdf']

Whichever way you merge, counting the pages and checking the first and last page afterwards is the safe habit.

Results

MethodNeeds installingPagesOrderContent
Select several in Explorer and print———PDFs have no Print command in the first place
Open several tabs in Edge, Ctrl+Pnothing——Only the tab you are viewing prints (total, 2 sheets)
One at a time through Microsoft Print to PDFnothing——One print, one file. Nowhere to string them together
Insert into Word and save as PDFWord10 → 13kept3 blank pages, title lines gone, borders and type sizes changed
pypdfPython + pypdf10 → 10keptPage stamps intact. Bookmarks can be added separately

What failed

What we did not test

Related notes