Excel 1702でExcel 2016で正常に動作していたマクロにVBAコードがいくつかあります。ただし、1人のユーザーが新しい更新プログラム(1705)マクロは "1004アプリケーション/オブジェクト不明"エラーを返します。このエラーは、特に2番目のSelection.Offset(1,0).Select行で発生します。私は1703年と1705年にコンピュータ間で気づいExcel 2016 VBAマクロが新しい列を挿入すると更新後1705が発生する
'Get the values from the first column
Range("A2 : A" & NumRows).Select
Selection.Copy
'Paste the copy once for each column containing data
For I = 2 To NumCols
Range("A2").Select
Selection.End(xlDown).Select
Selection.Offset(1, 0).Select
ActiveSheet.Paste
Next
'Insert a new column at the front of the worksheet
Columns("A:A").Select
Selection.Insert Shift:=xlToRight
'Get the first data column header and copy it
Range("C1").Select
Selection.Copy
'Paste the selection into the first column
Range("A2:A" & NumRows).Select
ActiveSheet.Paste
'Get and copy the rest of the headers
For I = 1 To NumCols
Range("C1").Select
Selection.Offset(0, I).Select
Selection.Copy
For C = 2 To NumRows
Range("A2").Select
Selection.End(xlDown).Select
Selection.Offset(1, 0).Select
ActiveSheet.Paste
Next
Next
ことの一つは、1703年に挿入された新しい列が空であるということで、1705年に新しい列は、行番号があるすべての方法の行の最大数(に値を持っています> 100万)。
私の質問は、どのようにExcelの最大行までのすべての行を埋めるデータなしで新しい列を挿入できますか?
最初のものまず。 [THIS](https://stackoverflow.com/questions/10714251/how-to-avoid-using-select-in-excel-vba-macros)を参照してください。コードを修正して、まだ問題が発生している場合はお知らせください –
コードはアップデート前に動作していて、Excelの「レコードマクロ」機能で記録されています。あなたがリンクした投稿は、それがパフォーマンスを向上させることを示していたようです。だから、私のパフォーマンスを改善するのを助けてくれてありがとう、本当に私がこの質問でやろうとしていることではありません。 – scratt
あなたはその記事で私の答えを見逃したようです:) '.Select'は非常に信頼性が低く、ランタイムエラーを引き起こす可能性があります:) –