title: .PasteSpecial Paste:=xlPasteColumnWidths works partially only with the last page
body: <p>I wrote a script to copy sheet by sheet from ThisWorkbook to another workbook. Everything seems to work fine except for the column width of the last sheet, and only the last sheet. Some columns have wrapped text which is not found in the original. I eliminated most of the code and only copied formats and column widths. Still, the column widths are different from that in the original file. And this only happens with the last sheet.</p>
  <pre><code>Sub copy_all()
  
  Dim rng As Range
  Dim i As Integer
  Dim destBook As Workbook
  
  Set destBook = Workbooks(&quot;Book3&quot;)
  
   With destBook
      For i = 1 To ThisWorkbook.Sheets.Count
  
           Set rng = ThisWorkbook.Sheets(i).UsedRange
  
           rng.Copy
          .Sheets(i).Range(&quot;A1&quot;).PasteSpecial Paste:=xlPasteFormats
          .Sheets(i).Range(&quot;A1&quot;).PasteSpecial Paste:=xlPasteColumnWidths
  
     Next i
  
   End With
  
  End Sub
  </code></pre>
  <p>I even wrote a script to list the column widths of the original and copied files so it'd easy to compare. Indeed, only the last page of the column widths are different. All the other 13 pairs of pages of the original and copied files have the identical column widths.</p>
  <p>As you can see from the following picture, only some of the column width on the last page are different from the original, not every one of them. Some are identical to the original. Only those with a width of 87 are copied to becoming a width of 48.</p>
  <p>My question is what is wrong with the copy script? Thanks in advance for any help.</p>
  <p><a href="https://i.stack.imgur.com/KsvAv.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/KsvAv.png" alt="enter image description here" /></a></p>