Đến nội dung


Hình ảnh
- - - - -

Các bác check hộ em xem VBA của em sai ở đâu.


  • Please log in to reply
2 replies to this topic

#1 yuduy

yuduy

    Chưa sử dụng CAD

  • Members
  • Pip
  • 4 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 27 May 2010 - 03:34 PM

Em đang thử viết VBA để cộng giá trị của một số với một giá trị bất kỳ như sau

Public Sub q1()
Dim n, gt As Integer
Dim b1 As AcadText
Dim ss1 As AcadSelectionSet
On Error Resume Next

n = InputBox("Nhap vao gia tri can cong")

Set ss1 = ThisDrawing.SelectionSets.Add("New1")
ss1.SelectOnScreen
For Each b1 In ss1
gt = b1.TextString + n
b1.TextString = Format(gt, "0.00")
b1.color = acMagenta
Next
ss1.Delete
End Sub

Khi chạy nó có ra bảng để nhập giá trị cần cộng thêm vào, sau đó chọn text đang cần cộng giá trị đó, nhưng em thử mãi số cần thay đổi vẫn thế, chỉ đổi màu sang Magenta chứ không cộng thêm giá trị n em đã nhập. Các bro chỉ dùm em xem có sai sót ở đâu không ạ.
  • 0

#2 hoa35ktxd

hoa35ktxd

    biết lệnh move

  • Members
  • PipPipPip
  • 125 Bài viết
Điểm đánh giá: 38 (tàm tạm)

Đã gửi 27 May 2010 - 04:01 PM

Dòng này b1.TextString + n chỉ có tác dụng như khi ta ghep chuỗi b1.TextString & n
Thử sửa lại như sau b1.TextString *1 + n xem thế nào nhé
  • 1

#3 yuduy

yuduy

    Chưa sử dụng CAD

  • Members
  • Pip
  • 4 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 27 May 2010 - 04:39 PM

Thx bác, thêm *1 vào, sửa lại khai báo n, gt là Variant là ok rồi :rolleyes:
  • 0