Đến nội dung


Hình ảnh
5 stars - based on 24598 reviews
* - - - - 1 Bình chọn

Lưu giá trị nhập bằng VBA Cad


  • Please log in to reply
7 replies to this topic

#1 NguyenNgocSon

NguyenNgocSon

    biết dimcontinue

  • Members
  • PipPipPipPipPip
  • 371 Bài viết
Điểm đánh giá: 40 (tàm tạm)

Đã gửi 10 August 2012 - 06:05 PM


Sub nhap()
Dim h As Double
h = ThisDrawing.Utility.GetReal("Nhap chieu cao text:" & " < " & 2 & " > ")
If h = "" Then
h=2
End If
End Sub
- Đoạn mã trên nếu nhấn Enter thì giá trị của h=2
- Nếu nhập giá trị mới thì có h bằng h mới nhập
Nhưng Code lỗi. Có bác nào rảnh mong xem giúp
Cám ơn!
  • 0

#2 ketxu

ketxu

    Copier - Paster - Editor

  • Moderator
  • PipPipPipPipPipPipPip
  • 5699 Bài viết
Điểm đánh giá: 2619 (tuyệt vời)

Đã gửi 10 August 2012 - 07:07 PM

Dim h as double If h = " " ???
  • 0

Thành viên nhóm CadMagic.
Mời bạn ghé thăm facebook nhóm - Page viết lisp theo yêu cầu  :
CAD MAGIC


#3 phamngoctukts

phamngoctukts

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1107 Bài viết
Điểm đánh giá: 707 (tốt)

Đã gửi 10 August 2012 - 11:35 PM


Sub nhap()
Dim h As Double
h = ThisDrawing.Utility.GetReal("Nhap chieu cao text:" & " < " & 2 & " > ")
If h = "" Then
h=2
End If
End Sub
- Đoạn mã trên nếu nhấn Enter thì giá trị của h=2
- Nếu nhập giá trị mới thì có h bằng h mới nhập
Nhưng Code lỗi. Có bác nào rảnh mong xem giúp
Cám ơn!

Bạn có thể dùng thế này


Sub nhap()
On Error Resume Next
Dim h As Double
h = ThisDrawing.Utility.GetReal("Nhap chieu cao text:" & " < " & "2" & " > ")
If Err <> 0 Then
h = 2
Err.Clear
End If
End Sub

  • 2
Tất cả vì sự phát triển của diễn đàn ...
Cám ơn đừng nói lời suông mà hãy nhấn Hình đã gửi!

#4 phantuhuong

phantuhuong

    biết dimstyle

  • Moderator
  • PipPipPipPipPip
  • 389 Bài viết
Điểm đánh giá: 203 (khá)

Đã gửi 11 August 2012 - 04:59 PM

Thêm cái nữa cho vui:

Sub nhap()
Dim h As Double
Dim errorFix
On Error GoTo errorFix
h = ThisDrawing.Utility.GetReal("Nhap chieu cao text <2>:")
MsgBox h
Exit Sub
errorFix:
h = 2
MsgBox h
End Sub

  • 2
Bồi dưỡng Excel & VBA cho các đơn vị ở Hà Nội và khu vực lân cận

Từng bước loại đồ Tàu ra khỏi cuộc sống!


#5 ngoctanvt

ngoctanvt

    biết zoom

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

Đã gửi 23 December 2016 - 03:08 PM

Nếu muốn lưu giá trị của lần nhập sau cùng thì phải sửa code lại như thế nào?

ví dụ: Lần cuối cùng nhập h=5. Lần dùng sau VBA sẽ lưu lại giá trị h=5 và hiển thị tại dòng nhắc lệnh.


  • 0

#6 ndtnv

ndtnv

    biết lệnh divide

  • Members
  • PipPipPipPipPipPip
  • 440 Bài viết
Điểm đánh giá: 390 (khá)

Đã gửi 23 December 2016 - 04:18 PM

Nếu muốn lưu giá trị của lần nhập sau cùng thì phải sửa code lại như thế nào?

ví dụ: Lần cuối cùng nhập h=5. Lần dùng sau VBA sẽ lưu lại giá trị h=5 và hiển thị tại dòng nhắc lệnh.

Dùng biến toàn cục : đưa khai báo

Dim h As Double

ra trước

Sub nhap()

...

h = ThisDrawing.Utility.GetReal("Nhap chieu cao text <" & h & " >:")


  • 1

#7 ngoctanvt

ngoctanvt

    biết zoom

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

Đã gửi 23 December 2016 - 04:49 PM

Thank.

Xin lỗi vì em đưa ra yêu cầu thiếu. Em muốn giá trị nhập cuối cùng hiển thị tại dòng nhắc lệnh và "Enter" là sẽ nhập lại giá trị đó, không đánh số vào dòng lệnh nữa.


  • 0

#8 ngoctanvt

ngoctanvt

    biết zoom

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

Đã gửi 26 December 2016 - 01:17 PM

Dùng biến toàn cục : đưa khai báo

Dim h As Double

ra trước

Sub nhap()

...

h = ThisDrawing.Utility.GetReal("Nhap chieu cao text <" & h & " >:")

 

Em đã sửa theo anh và chương trình chạy OK rồi, không hiểu sao hôm trước lại không được.

Cảm ơn anh.
 


  • 0