このページについて
 
このページは、mura's homeAutoCAD掲示板 で、当方の発言(書込み)がある以下の掲示板の内容です。
http://www.mura.sh/bbs/wwwbbs.cgi?print+200703/07030033.txt
 
タイトルおよび質問内容は上記より引用しています。
 
引用した質問内容は、バックカラーが

   

となっています。
 
当方の発言は、バックカラーが

   

となっています。
 
その他の著作権者の掲載許可を得ていない発言内容は削除(リンクを除く)しています
 
また、当方では、削除部分の正当な著作権保持者を判断出来ませんので、
ご連絡を頂いても、復活させることは出来ません。ご了承下さい。
 
 
掲示板の著作権について
 
掲示板への匿名の書き込みであっても、著作権(著作権法)で保護されています。
また、判例(確定した判決)もあります。
 
裁判所 判例検索システム

ホテルジャンキーズ事件

知的財産裁判例
知的財産裁判例
平成13(ワ)22066  著作権 民事訴訟
平成14年04月15日 東京地方裁判所
全文 控訴
付帯控訴
知的財産裁判例
知的財産裁判例
平成14(ネ)2887  著作権 民事訴訟
平成14年10月29日 東京高等裁判所
全文 確定

ただし、あらかじめ取り決めがある場合は、その取り決めが優先します
 ※たとえば、OKWave の掲示板 (利用規約/第10条(投稿内容の利用権))

 
 
 

ブロック内の特定の色を変更したい。

sei 2007/03/06(火) 17:00:20

大変お世話になっております。

ブロック内の特定の色を"byblock"したいと思っています。

こちらでもいろいろ調べさせて頂き、
ブロック内の色を全部一度に変えることは出来たのですが、
複数の色の中から特定の色を選び、変更するということが出来ません。

どうかお助け願えないでしょうか・・・

よろしくお願いいたします。

おせっかい 2007/03/06(火) 19:52:47

著作権者の許可を得ていないため削除
 

sei 2007/03/07(水) 08:32:41

著作権者の許可を得ていないため削除
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

sei 2007/03/07(水) 09:08:26

著作権者の許可を得ていないため削除
 
 
 

Jo [HOMEPAGE] 2007/03/07(水) 09:20:19

著作権者の許可を得ていないため削除
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

sei 2007/03/07(水) 09:39:51

著作権者の許可を得ていないため削除
 
 
 
 

sei 2007/03/07(水) 09:42:39

著作権者の許可を得ていないため削除
 
 
 
 
 
 
 

Jo [HOMEPAGE] 2007/03/07(水) 10:42:19

著作権者の許可を得ていないため削除
 
 
 

sei 2007/03/07(水) 11:00:38

著作権者の許可を得ていないため削除
 
 
 
 
 
 
 
 
 

sei 2007/03/07(水) 17:43:03

著作権者の許可を得ていないため削除
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Jo [HOMEPAGE] 2007/03/07(水) 18:21:02

著作権者の許可を得ていないため削除
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

sei 2007/03/07(水) 18:39:27

著作権者の許可を得ていないため削除
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Jo [HOMEPAGE] 2007/03/07(水) 19:15:50

著作権者の許可を得ていないため削除
 

オリバー君 2007/03/07(水) 22:47:34

著作権者の許可を得ていないため削除
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Jo [HOMEPAGE] 2007/03/08(木) 08:40:37

著作権者の許可を得ていないため削除
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

sei 2007/03/08(木) 08:53:59

著作権者の許可を得ていないため削除
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

sei 2007/03/08(木) 09:16:31

著作権者の許可を得ていないため削除
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

sei 2007/03/08(木) 09:24:11

著作権者の許可を得ていないため削除
 
 
 
 
 
 
 

sei 2007/03/08(木) 10:29:51

≪ 解決 ≫

著作権者の許可を得ていないため削除
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

sei 2007/03/08(木) 15:10:34

著作権者の許可を得ていないため削除
 
 
 
 

Kamegai [HOMEPAGE] 2007/03/08(木) 17:43:08

解決済みですが・・・
フォーム付きのVBAマクロです(笑)
ユーザーフォームのブロック一覧から選択できます。

ただし、Visual Basic エディタで以下の参照設定が必要。
・Microsoft Visual Basic for Applications Extensibility x.x
・Microsoft Forms x.x Object Library
Microsoft Forms・・・ が一覧にない場合には、
ユーザーフォームを挿入すれば表示されます。

また、「中断モードでは入力できません。」エラーで、
ブレークポイントの設定は出来ません。

'標準モジュール
Option Explicit
'ブロック内の色を変更メイン
Public Sub Main()
Dim VBC As VBComponent
Dim UF  As Object
Dim I   As Long
    On Error GoTo Err:
    Set VBC = SetNewForm()
    VBC.CodeModule.InsertLines (VBC.CodeModule.CountOfLines + 1), MakeCode()
    Set UF = UserForms.Add(VBC.Name)
    If UF.ListBox1.ListCount > 0 Then
        UF.Show
        '--------------------------
        'ブロック処理
        With UF.ListBox1
            For I = 1 To .ListCount
                If .Selected(I - 1) Then
                    Call SetProperties(ActiveDocument.Blocks.Item(.List(I - 1)))
                End If
            Next I
        End With
        '--------------------------
        Unload UF
        'ユーザーフォーム削除
        Application.VBE.ActiveVBProject.VBComponents.Remove VBC
        ActiveDocument.Regen acActiveViewport
    Else
        MsgBox "ブロックがありません  ", vbCritical
    End If
    Set UF = Nothing
    Set VBC = Nothing
    End
Exit Sub
Err:
    Resume Next
End Sub
'プロパティ変更
Private Sub SetProperties(Block As AcadBlock)
Dim Obj As AcadEntity
    On Error GoTo Err:
    For Each Obj In Block
        If Obj.Color = acRed Then
            With Obj
                .Layer = "0"
                .Linetype = "ByBlock"
                .Color = acByBlock
            End With
        End If
    Next Obj
Exit Sub
Err:
    Resume Next
End Sub
'ユーザーフォーム作成
Function SetNewForm() As VBComponent
Dim Ctl As Controls
    On Error GoTo Err:
    With Application.VBE.ActiveVBProject
        Set SetNewForm = .VBComponents.Add(vbext_ct_MSForm)
    End With
    With SetNewForm
        .Properties("Width").Value = 200
        .Properties("Height").Value = 200
        .Properties("Caption").Value = "Block List"
        Set Ctl = .Designer.Controls
    End With
    With Ctl.Add("Forms.CommandButton.1")
        .Cancel = True
        .Caption = "キャンセル"
        .top = 156
        .Left = 126
        .Height = 17.5
        .Width = 60
    End With
    With Ctl.Add("Forms.CommandButton.1")
        .Caption = "OK"
        .top = 156
        .Left = 60
        .Height = 17.5
        .Width = 60
    End With
    With Ctl.Add("Forms.CommandButton.1")
        .Caption = "全選択"
        .top = 129
        .Left = 108
        .Height = 17.5
        .Width = 39.75
    End With
    With Ctl.Add("Forms.CommandButton.1")
        .Caption = "全解除"
        .top = 129
        .Left = 150
        .Height = 17.5
        .Width = 39.75
    End With
    With Ctl.Add("Forms.ListBox.1")
        .top = 6
        .Left = 9
        .Height = 125
        .Width = 181
        .ListStyle = 1
        .MultiSelect = 1
    End With
    With Ctl.Add("Forms.Label.1")
        .Caption = "ブロックを選択してください"
        .top = 132
        .Left = 12
        .Height = 12
        .Width = 90
    End With
    Set Ctl = Nothing
Exit Function
Err:
    Resume Next
End Function
'ユーザーフォームのコード作成
Private Function MakeCode() As String
Dim Block As AcadObject
    On Error GoTo Err:
    MakeCode = ""
    MakeCode = MakeCode & "Option Explicit" & vbCrLf
    MakeCode = MakeCode & "" & vbCrLf
    MakeCode = MakeCode & "'キャンセル" & vbCrLf
    MakeCode = MakeCode & "Private Sub CommandButton1_Click()" & vbCrLf
    MakeCode = MakeCode & "Dim I As Long" & vbCrLf
    MakeCode = MakeCode & "  Me.Hide" & vbCrLf
    MakeCode = MakeCode & "  'キャンセルの場合はすべて選択解除" & vbCrLf
    MakeCode = MakeCode & "  For I = 1 To Me.ListBox1.ListCount" & vbCrLf
    MakeCode = MakeCode & "    Me.ListBox1.Selected(I - 1) = False" & vbCrLf
    MakeCode = MakeCode & "  Next I" & vbCrLf
    MakeCode = MakeCode & "End Sub" & vbCrLf
    MakeCode = MakeCode & "'OK" & vbCrLf
    MakeCode = MakeCode & "Private Sub CommandButton2_Click()" & vbCrLf
    MakeCode = MakeCode & "  Me.Hide" & vbCrLf
    MakeCode = MakeCode & "End Sub" & vbCrLf
    MakeCode = MakeCode & "'全選択" & vbCrLf
    MakeCode = MakeCode & "Private Sub CommandButton3_Click()" & vbCrLf
    MakeCode = MakeCode & "Dim I As Long" & vbCrLf
    MakeCode = MakeCode & "  For I = 1 To Me.ListBox1.ListCount" & vbCrLf
    MakeCode = MakeCode & "    Me.ListBox1.Selected(I - 1) = True" & vbCrLf
    MakeCode = MakeCode & "  Next I" & vbCrLf
    MakeCode = MakeCode & "End Sub" & vbCrLf
    MakeCode = MakeCode & "'全解除" & vbCrLf
    MakeCode = MakeCode & "Private Sub CommandButton4_Click()" & vbCrLf
    MakeCode = MakeCode & "Dim I As Long" & vbCrLf
    MakeCode = MakeCode & "  For I = 1 To Me.ListBox1.ListCount" & vbCrLf
    MakeCode = MakeCode & "    Me.ListBox1.Selected(I - 1) = False" & vbCrLf
    MakeCode = MakeCode & "  Next I" & vbCrLf
    MakeCode = MakeCode & "End Sub" & vbCrLf
    MakeCode = MakeCode & "'初期化" & vbCrLf
    MakeCode = MakeCode & "Public Sub UserForm_Initialize()" & vbCrLf
    MakeCode = MakeCode & "  'ListBox1にリスト追加" & vbCrLf
    For Each Block In ThisDrawing.Blocks
        If Not (Block.IsXRef) And Not (Block.IsLayout) Then
        '両方のプロパティが FALSE である場合は単純なブロック
            MakeCode = MakeCode & "  Me.ListBox1.AddItem """ & Block.Name & """" & vbCrLf
        End If
    Next Block
    MakeCode = MakeCode & "End Sub" & vbCrLf
Exit Function
Err:
    Resume Next
End Function


長文失礼致しました。

sei 2007/03/09(金) 10:11:41

著作権者の許可を得ていないため削除
 
 
 
 
 
 
 
 
 
 

sei 2007/03/09(金) 23:00:02

著作権者の許可を得ていないため削除