4

これは、VBA コードを作成する最初の試みです。stackoverflowで見つけたものを模倣しています。

特定の列 (A、B、E) をあるワークブックから別のワークブックにコピーし、特定の行のフォントと色を変更し、特定のセルのテキストを編集したい (長いフレーズを「グループ」という単語に置き換えます)。

これは、変更せずにコピーしたコードです。

Sub CopyColumnToWorkbook()
Dim sourceColumn As Range, targetColumn As Range

Set sourceColumn = Workbooks("Source").Worksheets("Sheet1").Columns("A")
Set targetColumn = Workbooks("Target").Worksheets("Sheet1").Columns("A")

sourceColumn.Copy Destination:=targetColumn
End Sub

ランタイム エラー 9 が発生し、以下の行が強調表示されます。

Set sourceColumn = Workbooks("Source").Worksheets("Sheet1").Columns("A")

以下にソース ファイルとターゲット ファイルを添付します。これは、正常に実行されたときに次のようになることを願っています。

ソースファイル

対象ファイル

4

1 に答える 1

11

そこにないシートを参照しています。インデックスを使用してブックの最初のシートを参照するように変更します。また、ファイルに拡張子を含めていないため、ワークブック オブジェクトでも失敗します。

Sub CopyColumnToWorkbook()
Dim sourceColumn As Range, targetColumn As Range

Set sourceColumn = Workbooks("Source.xlsm").Worksheets(1).Columns("A")
Set targetColumn = Workbooks("Target.xlsm").Worksheets(1).Columns("A")

sourceColumn.Copy Destination:=targetColumn
End Sub
于 2012-12-07T00:26:21.463 に答える