Board logo

標題: [發問] 內碼找不到 aj ? 我可能定義錯誤??? [打印本頁]

作者: tomtracy    時間: 2015-8-18 13:52     標題: 內碼找不到 aj ? 我可能定義錯誤???

這是我之前所做的按廠家分發表 , 因業務需要我增設了很多欄位  可是不知是那里修改錯了  卻無法執行 請各位高手幫忙 謝謝[attach]21749[/attach]
作者: owen06    時間: 2015-8-18 22:33

回復 1# tomtracy


    你for ah = 1 To NameCount之後下面的next 不應該是aj,然後with完畢之後下面沒有接end with
作者: jackyq    時間: 2015-8-18 22:39

大大把 aj 去掉
End Sub 上面插進一個 End With 就好啦
作者: tomtracy    時間: 2015-8-19 07:53

我去掉aj 把 End With插入 可是仍不能正確執行
作者: jackyq    時間: 2015-8-19 09:11

那大大想實現什麼呢
作者: owen06    時間: 2015-8-19 18:07

回復 4# tomtracy

大大這樣執行結果正確嗎?
  1. Sub Macr4()

  2. On Error Resume Next

  3. Dim mySheetName As String
  4. mySheetName = ActiveWorkbook.ActiveSheet.Name

  5. For Each sht In ActiveWorkbook.Sheets
  6. Application.DisplayAlerts = False
  7. '關閉警告視窗
  8. If sht.Name <> mySheetName Then sht.Delete

  9. Application.DisplayAlerts = True
  10. '恢復警告視窗
  11. Next sht


  12. With Sheets(mySheetName)
  13. .Columns("s:ah").ClearContents
  14. .Columns("C:C").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("R1"), Unique:=True
  15. End With

  16. Dim NameCount As Integer
  17. NameCount = Sheets(mySheetName).Range("R1").End(xlDown).Row - 1
  18. For ah = 1 To NameCount
  19. ActiveWorkbook.Sheets.Add after:=Worksheets(Worksheets.Count)
  20. ActiveSheet.Name = Sheets(mySheetName).Cells(ah + 1, 18)
  21. Next


  22. Dim myName As String
  23. Sheets(mySheetName).Select
  24. For aj = 1 To NameCount
  25. myName = Range("R2")
  26. MsgBox myName
  27. Columns("s:ah").ClearContents
  28. Columns("A:P").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range( _
  29. "R1:R2"), CopyToRange:=Range("s1"), Unique:=False
  30. Columns("s:ah").Copy Sheets(myName).Range("A1")
  31. Range("R2").Delete Shift:=xlUp
  32. Next aj
  33. Sheets(mySheetName).Columns("s:ah").ClearContents
  34. End Sub
複製代碼

作者: tomtracy    時間: 2015-8-20 09:21

回復 6# owen06

感謝您  比我之前使用情況更好  謝謝




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)