0

VBA コードを実行しているときに、ちょっとした問題が発生しています。エクセルで指定した列の情報を取得して確認しようとしています。16 回実行されて、ワークブックの列にある内容が表示されない 17 回まで情報が取得されます。解決策を教えてください。

  Dim CheckingWhatsInCell As String
  Dim i As Integer
  Dim j As Integer


  Dim ToWorkbook As Workbook



  ThisWorkbook.Activate


  For i = 1 To 20
    CheckingWhatsInCell = Trim(Range("K" & i).Value)
   If CheckingWhatsInCell = "Albuquerque  NM" Then
       Set ToWorkbook = Workbooks.Open("C:\Users\mgonza-c\Documents\TerritoryAlbuquerqueNM.xlsx")
       For j = 1 To 139
       ToWorkbook.Worksheets("Sheet1").Cells(i, j) = ThisWorkbook.Sheets("Sheet2").Cells(i, j).Value
       Next j
    End If

  Next i
  ToWorkbook.Save
  ToWorkbook.Close
End Sub

ありがとう!

4

1 に答える 1

0
CheckingWhatsInCell = Trim(Range("K" & i).Value)

このコードは、アクティブな ThisWorkbook と、最後にアクティブだったシートを検索します。おそらく、間違ったシートを探しています。別のブックを開いてアクティブにすると、状況も変わります。

次に、ジュリアンが示唆するように、K17に奇数の値が存在する可能性があります。

また、Workbook に割り当てられていない場合でも、Save and Close ToWorkbook を試みていることに注意してください。

于 2013-07-14T21:21:16.233 に答える