Đến nội dung


Hình ảnh
- - - - -

Xin code code của chương trình thống kê cốt thép bằng VBA


  • Please log in to reply
9 replies to this topic

#1 unlucky12

unlucky12

    biết zoom

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

Đã gửi 23 November 2009 - 05:51 PM

làm ơn cho em xin code của chương trình thống kê cốt thép với :cheers: :gun: :D :blink:
  • 0

#2 anhcos

anhcos

    biết lệnh hatchedit

  • Advance Member
  • PipPipPipPip
  • 260 Bài viết
Điểm đánh giá: 170 (tàm tạm)

Đã gửi 23 November 2009 - 07:57 PM

làm ơn cho em xin code của chương trình thống kê cốt thép với :cheers: :gun: :D :blink:


Không có ai cho bạn cái code chương trình như vậy đâu.

Với lại nếu có thì may ra tác giả mới nắm được thôi.
  • 0
Clear sky!

MF Rock collection.

#3 unlucky12

unlucky12

    biết zoom

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

Đã gửi 23 November 2009 - 08:52 PM

Không có ai cho bạn cái code chương trình như vậy đâu.

Với lại nếu có thì may ra tác giả mới nắm được thôi.

các anh giúp em với làm đồ án đến đây thì bị tắc :cheers: :D :gun:
Nếu được cho em cả phần kẻ khung tên bằng khổ A3 nua nha!!!!! :D :gun: :D :blink:
  • 0

#4 tucdrom

tucdrom

    — T — U — N — A —

  • Members
  • PipPipPipPipPipPip
  • 497 Bài viết
Điểm đánh giá: 642 (tốt)

Đã gửi 23 November 2009 - 09:09 PM

các anh giúp em với làm đồ án đến đây thì bị tắc :cheers: :D :D
Nếu được cho em cả phần kẻ khung tên bằng khổ A3 nua nha!!!!! :gun: :D :D :blink:

Hình như cậu này học nghành Tin học Xây dựng của trường XD thì phải?Đồ án hay BTL?VBA trong AutoCad không khó mấy đâu,chịu khó đọc sách 1 ít là làm dc mấy bài cơ bản ý mà.Gửi bạn tham khảo quyển Lập trình trong AutoCad của giảng viên Trần Anh Bình trường XD.Quyển này mình thấy rất hay và cơ bản.
:gun:
  • 0

Email : anhtu2101@gmail.com



 


#5 Jin Yong

Jin Yong

    biết lệnh group

  • Vip
  • PipPipPipPipPipPip
  • 498 Bài viết
Điểm đánh giá: 334 (khá)

Đã gửi 24 November 2009 - 01:54 PM

Hình như cậu này học nghành Tin học Xây dựng của trường XD thì phải?Đồ án hay BTL?VBA trong AutoCad không khó mấy đâu,chịu khó đọc sách 1 ít là làm dc mấy bài cơ bản ý mà.Gửi bạn tham khảo quyển Lập trình trong AutoCad của giảng viên Trần Anh Bình trường XD.Quyển này mình thấy rất hay và cơ bản.
:cheers:

Để lập được một chương trình thống kê cốt thép là không khó, tôi nghĩ khi bạn đã làm đồ án tốt nghiệp về VBA thì chắc chắn bạn sẽ lập được một chương trình thống kê cốt thép, vấn đề là ứng dụng như thế nào trong đồ án của bạn mới là khó. Có thể có đoạn mã thống kê, bạn hoàn toàn có thể search trên mạng, nhưng liệu nó có ghép được vào chương trình bạn đã lập không :D
  • 0

Phát triển phần mềm thiết kế Kết cấu Việt Nam - http://www.ketcausoft.com


#6 rockbeginer

rockbeginer

    Chưa sử dụng CAD

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

Đã gửi 28 November 2009 - 10:25 AM

E có vấn đề xin đc hỏi:

E muốn chọn các đối tượng trong 1 file cad để lọc các thứ cần thiết
e dùng phương thức SelectOnScreen để chọn các đối tượng trong bản vẽ
{Dim Obj As Object

Set Obj = ThisDrawing.SelectionSets.Add("New")
Obj.SelectOnScreen}

nhưng select xong thì thấy Obj chỉ chứa được tối đa 256 item mà e thì muốn chứa nhiều hơn rất nhiều (có thế lên hàng nghìn item)

Bác nào biết giúp e với ạ
  • 0

#7 phantuhuong

phantuhuong

    biết dimstyle

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

Đã gửi 29 November 2009 - 09:51 PM

E có vấn đề xin đc hỏi:

E muốn chọn các đối tượng trong 1 file cad để lọc các thứ cần thiết
e dùng phương thức SelectOnScreen để chọn các đối tượng trong bản vẽ
{Dim Obj As Object

Set Obj = ThisDrawing.SelectionSets.Add("New")
Obj.SelectOnScreen}

nhưng select xong thì thấy Obj chỉ chứa được tối đa 256 item mà e thì muốn chứa nhiều hơn rất nhiều (có thế lên hàng nghìn item)

Bác nào biết giúp e với ạ


Tôi thử làm vẫn bình thường, đây là code lấy từ Help của VBA. Bổ sung thêm dòng lệnh xoá "TEST_SSET" nếu có tồn tại trứơc đó:


Sub Example_SelectOnScreen()
' This example adds objects to a selection set by prompting the user
' to select ones to add.

' Create the selection set
Dim ssetObj As AcadSelectionSet
ThisDrawing.SelectionSets.Item("TEST_SSET").Delete
Set ssetObj = ThisDrawing.SelectionSets.Add("TEST_SSET")

' Add objects to a selection set by prompting user to select on the screen
ssetObj.SelectOnScreen
Dim ssetObj=nothing
End Sub

  • 0
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!


#8 rockbeginer

rockbeginer

    Chưa sử dụng CAD

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

Đã gửi 30 November 2009 - 11:30 AM

Tks bác Phantuhuong,e làm đc rồi ah. Vậy mà lâu nay e cứ tưởng nó chỉ chứa 1 byte dữ liệu :">
e xem watch thấy có 256 nên chả bít phải làm sao.

Có 1 điều e ko hiểu, sao nó chỉ hiện ra 256 item ở phần theo dõi biến thôi nhỉ ?
  • 0

#9 thanhduan2407

thanhduan2407

    biết lệnh adcenter

  • Advance Member
  • PipPipPipPipPipPipPip
  • 995 Bài viết
Điểm đánh giá: 223 (khá)

Đã gửi 20 September 2010 - 02:30 PM

Chào bác Phantuhuong.
Em có điều muốn được hỏi bác một chút. Sau khi em chọn đối tượng trên màn hình bằng cấu trúc lệnh : ThisDrawing.Utility.GetEntity entry, PickedPoint, "(Select Line : )"
Em đã lấy được thông tin của đối tượng đó rồi và bây giờ em muốn xoá nó đi thì em phải làm như thế nào hả bác.
Đây là cấu trúc em đang viết dở. Bác xem qua và cho em giải đáp bác nhé. Cảm ơn bác rất nhiều :
Sub LatCanh()
Dim Id1 As Long, Id2 As Long, Id3 As Long, ID4 As Long
Dim it1 As Long, it2 As Long, it3 As Long
Dim it As Long
Dim entry As AcadObject
Dim PickedPoint As Variant
Dim P As Point_3D
Dim P1 As Point_3D, P2 As Point_3D
Dim Pt(1 To 4) As Point_3D
ThisDrawing.Utility.GetEntity entry, PickedPoint, "(Select Line : )"
P.rX = PickedPoint(0)
P.rY = PickedPoint(1)
it = GetTamGiac(P)
Id1 = DS_Tamgiacs(it).Id(1)
Id2 = DS_Tamgiacs(it).Id(2)
Id3 = DS_Tamgiacs(it).Id(3)
Pt(1) = DS_GPoints(Id1)
Pt(2) = DS_GPoints(Id2)
Pt(3) = DS_GPoints(Id3)
Pt(4) = Pt(1)
' 'Neu la doi tuong Line
If entry.ObjectName = "AcDbLine" Then
Dim ObjLine As AcadLine
Set ObjLine = entry
P1.rX = ObjLine.startPoint(0): P1.rY = ObjLine.startPoint(1)
P2.rX = ObjLine.endPoint(0): P2.rY = ObjLine.endPoint(1)
'''''' MsgBox P1.rX & vbCrLf & P1.rY & vbCrLf & P2.rX & vbCrLf & P2.rY
Dim j As Long
For j = 1 To 3
If (Diemtrungnhau(P1, Pt(j)) = True) And (Diemtrungnhau(P2, Pt(j + 1)) = True) Then
MsgBox "§©y lµ tam gi¸c thø " & it & vbCrLf & "§· chän ®­îc c¹nh", vbInformation, "Th«ng b¸o"
TIN.HoanViBatBuoc it, j
TIN.VeTamGiacs
'''' Sau khi thoả mãn điều kiện thì xoá nó đi
ObjLine.Delete
ThisDrawing.Regen acAllViewports
Exit Sub
End If
Next

End If

End Sub

  • 0



Tôi là con kiến bò trên sa mạc kiến thức bao la. Biển học thật rộng lớn







#10 kegiaumat

kegiaumat

    biết vẽ circle

  • Members
  • PipPip
  • 39 Bài viết
Điểm đánh giá: -2 (bình thường)

Đã gửi 06 October 2011 - 06:02 PM

chào các bác em cũng bít qua một ít về lisp nhưng giờ muốn tìm hiểu qua về VBA. trong phương thức chọn đối tượng nếu mình muốn chọn các đường line mang màu 1 thì làm sao
  • 0