[XLS-MAP-03]: Plotting List Koordinat dari Excel ke AutoCAD

 

Referensi : import point dengan autolisp
Platform : Excel dan AutoCAD
Lokasi File : download

Pada awalnya saya ingin membuat program visual basic application yang ada di Autocad 2011 untuk menggambarkan lokasi titik-titik sesuai dengan list koordinat yang ada di excel. Tetapi saat saya menekan tombol Alt+F11 untuk mengaktifkan visual basic di AutoCAD 2011 muncul pesan “Microsoft Visual Basic for Application Software is no longer installed with AutoCAD”. Sebetulnya masih disupport oleh Autodesk, tetapi harus download dulu di sini.

Daripada download (sebetulnya pingin sih), saya coba cara lain dengan memanfaatkan program Microsoft Visual Basic for Application yang ada di Excel (Macro). Koneksi AutoCAD dan Excel bisa dilakukan dengan cara memilih ‘AutoCAD 2011 Type Library’ di pilihan References-VBA Project. Jika Anda menggunakan versi AutoCAD yang lain, pilihlah library dengan nama ‘AutoCAD xxxx Type Library’, dimana xxxx adalah versi AutoCAD yang sedang Anda gunakan. misal untuk AutoCAD 2010, maka librarynya adalah ‘AutoCAD 2010 Type Library’.

Contoh List Koordinat di Excel yang akan diplot di AutoCAD adalah :

image

Bujur akan diplot sebagai koordinat X, Lintang adalah koordinat Y dan  Elevasi adalah Z. Text Keterangan akan diplot sesuai dengan posisi titik tersebut (XYZ).

 

 

 

 

 

 

1. Buka file Excel yang berisi list koordinat Saat file excel sudah terbuka, pilih sheet yang berisi list koordinatnya, kemudian tekan Alt+F11 untuk mengaktifkan visual basic editor.
Dari Menu ‘Insert’ pilih ‘Module’
2. Jalankan program AutoCAD, tanpa menutup program Excel Jika diinginkan, pilih layer dan text style di AutoCAD.
3. Setting Reference ke AutoCAD Library pada visual basic editor, pilih menu ‘Tools’ kemudian ‘References’.
Pilih AutoCAD Library sesuai dengan versi AutoCAD yang aktif di pilihan available references. 

image
click OK jika library sudah dipilih.

4. Tulis Macro atau Visual basic di module Option Explicit
Sub PlotKeAutocad()
Dim rgKoordinat As Range

‘table list koordinat di sheet yang aktif
Set rgKoordinat = ActiveSheet.UsedRange
rgKoordinat.Select

Dim respon As Long
If MsgBox(“Pilihan Sudah Benar?”, vbYesNo) = vbNo Then Exit Sub

Dim c As Range, i As Integer, j As Integer
Dim lstKoord() As Double, lstDes() As String

‘membaca list koordinat dan nama titik dari excel
i = -1: j = -1
For Each c In rgKoordinat.Columns(1).Cells
If Application.IsNumber(c) Then
i = i + 3
j = j + 1
ReDim Preserve lstKoord(i)
lstKoord(i – 2) = c
lstKoord(i – 1) = c.Offset(, 1)
lstKoord(i) = c.Offset(, 2)

ReDim Preserve lstDes(j)
lstDes(j) = c.Offset(, 3)
End If
Next

‘koneksi ke autocad, program autocad harus sudah dijalankan
Dim appCAD As AcadApplication
On Error Resume Next
Set appCAD = GetObject(, “AutoCAD.Application”)
If Err.Number Then Exit Sub

Dim Koordinat(0 To 2) As Double
Const TinggiHuruf = 0.002 ‘rubah angka sesuai dengan tinggi huruf yang diinginkan
j = -1
For i = LBound(lstKoord) To UBound(lstKoord) Step 3
j = j + 1
Koordinat(0) = lstKoord(i)
Koordinat(1) = lstKoord(i + 1)
Koordinat(2) = lstKoord(i + 2)
With appCAD.ActiveDocument.ModelSpace
.AddPoint Koordinat ‘plot koordinat
.AddText lstDes(j), Koordinat, TinggiHuruf
End With
Next i

appCAD.ZoomExtents
AppActivate appCAD.Caption
Set appCAD = Nothing
End Sub

5. Menjalankan Program atau Macro Kembali ke sheet list koordinat.
Tekan Alt+F8, kemudian pilih macro PlotKeAutocad , kemudian click Run
6. Check di AutoCAD, apakah titik2 tersebut sudah benar possisinya?
Advertisement

29 thoughts on “[XLS-MAP-03]: Plotting List Koordinat dari Excel ke AutoCAD

  1. Mas Cadex, bagaimana menerapkan conditional format di excel ke map di autocad (2010) ?
    Ada tabel dalam XLS, dengan value conditional format, misal : 20 masing-masing diberi warna merah, kuning, hijau.
    Di autocad ada map dengan koordinat spt di atas. Bagaimana menerapkan merah kuning hijau di autocad, jika data value-nya dinamis?
    Terima kasih infonya.

  2. Thanks responsenya, mas …..

    Contoh lagi :
    – ada peta Jawa, terbagi ke Jawa Barat, Tengah dan Timur.
    – Di excel ada data besaran rasio lingkungan. Conditional format berdasar besaran tadi. Misal 10 warna diblok (hash) hitam, 15 merah dan 20 hijau.
    Jawa Barat misal 15, maka di autocad peta Jawa Barat layer hashnya berwarna merah. Demikian juga untuk wilayah lain…
    – Tiap bulan, angka besaran berubah, jadi warna layer juga ikut berubah mengikuti besaran.

    Terima kasih sekali lagi….

    1. kalo pakai autocadmap: peta tersebut harus dibuat topologinya. buat link topologi dengan excel. dengan fasilitas display manager dapat dibuat peta tematik yang diinginkan.
      kalo pakai excel: bisa juga pakai visual basic aplikasi (macro) dapat dibuat peta tematik di excel. nanti saya contohkan cara membuatnya di excel.

      1. Kalau pakai ACAD 2010 bisa? Saya pakainya ACAD 2010 dan Excel 2007.
        Macro yang diatas setelah saya coba ternyata bisa membuat point.
        Berarti bisa membuat line atau polyline dan hatch-nya dengan propertis masing-masing ya?

        Dimana bisa saya temukan refferensi visual basic yang lebih lengkap seperti di atas, mas?
        Thanks sekali lagi….

      2. pakai ACAD 2010, bisa, asal sudah dirubah library reference-nya ke ACAD 2010.
        Tidak saja membuat polyline, object yang lain beserta property-nya juga bisa.

        Coba anda cari file acadauto.chm di directory tempat autocad terinstall, di dalamnya ada beberapa sample vba yang bagus untuk belajar..

      3. Mas Cadex, boleh konsultasi via email?
        Ada contoh kasus yang ingin saya kirimkan.
        Terima kasih banyak atas sharing ilmunya…

      4. saya tidak janji bisa jawab via email, karena blog ini saya tulis di waktu luang saya…

  3. mas, yang di copy paste ke visual basic yang mana?
    saya masih newbie, kemarin dah nyoba hasilnya syntax error

  4. mas,….
    saya ikuti semua langkah2nya
    tapi masih juga ” syntax error”

    trims banget sebelumnya atas solusinya.

    1. quoted
      “Jika Anda menggunakan versi AutoCAD yang lain, pilihlah library dengan nama ‘AutoCAD xxxx Type Library’, dimana xxxx adalah versi AutoCAD yang sedang Anda gunakan”
      kalo autocad 2007 nama librarynya biasanya AutoCAD 2007 Type Library

    1. di posting saya tulis “Jika Anda menggunakan versi AutoCAD yang lain, pilihlah library dengan nama ‘AutoCAD xxxx Type Library’, dimana xxxx adalah versi AutoCAD yang sedang Anda gunakan. misal untuk AutoCAD 2010, maka librarynya adalah ‘AutoCAD 2010 Type Library’.”

      Jadi kalo pakai 2008, pilihan librarinya: AutoCAD 2008 Type Library

  5. Mas, saya copy tulisan yang warna biru tapi syntax eror, (klo ga salah di bagian tulisan ‘table list koordinat di sheet yang aktif). Mohon pencerahanya…

  6. Senang bisa baca-baca tulisannya. Sangat kreatif. Banyak belajar dari sampeyan. Dari yang ga tau jadi tau. Semoga bermanfaat dan ilmunya terus mengalir, seperti pahalanya juga. Terima kasih, ya.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s