• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBAで文書保護の例外処理領域を削除したい!)

VBAで文書保護の例外処理領域を削除

Wendy02の回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.1

こんばんは。 しばらく調べてみたのですが、どうしても、テキストボックス(オートシェイプ)の中の文字列に対する[例外処理]のオブジェクトが取れません。Editors オブジェクトが、特別な仕様ではなく、テキストボックス側のほうが特別な仕様だからのようです。 Shapes のTextFrameやShapeRangeのTextFrameからでは、Editors オブジェクトのEditor プロパティは取れないような気がします。 Shapes は、もともと、Collection ですから、ActiveDocument からダイレクトで、このオブジェクトを取れる方法があれば、なんとかなるような気がしたのですが分かりません。 これについては、インターネットでも書いている人がいません。私が見たすべて、ActiveDocument の[例外処理]だけで、ありえないわけではないのですが、テキストボックスを指定して、[例外処理]を掛けるというようなことは、見当たりません。 ただ、実際には、テキストを取り出して、上書きしてしまえば、その[例外処理]は外れてしまいますね。 Dim txt As String  txt = ActiveDocument.Shapes(1).TextFrame.TextRange.Text  ActiveDocument.Shapes(1).TextFrame.TextRange.Text = txt

koutan5
質問者

お礼

ご回答ありがとうございます!! やはり、一筋縄ではいかないのですね・・・orz ただ、最後の方法だと確かに例外処理がはずれますね! なるほど!! 他に方法が見つからなければこの方法を組み込みたいと思います。 貴重なご意見ありがとうございました!

関連するQ&A

  • Word文書の削除

    パソコンのマイドキュメントにあるWord文書を削除したのですが、削除をクリックすると「削除できません。このディスクは書込み禁止になっています。書込み禁止を解除するか、別のディスクを使っください」の窓コメントがでます。書き込み禁止はどのように解除したらよいのでしょうか。お教え下さい。私のパソコンはウィンドウズXPです。

  • Wordの「文書の保護」で消えてしまった場合

    はじめまして。 今、保護されたWordファイルに項目等をかなり打ち込んでいました。 で、線を引きたかったので、保護を解除し線を引き、再度ツール→文書の保護→フォームフィールド"OK"としたら打ち込み内容がすべて消去されて元に戻すことが出来なくなってしまって大変凹んでおります。 どなたか元に戻す方法教えていただけないでしょうか?

  • word文書が削除できません

    作成したword文書ですが、あるフォルダーのファイルが 「Microsoft Wordによってファイルは開かれているため操作を完了できません ファイルを閉じてから再実行してください」と出ます。 wordは開いていません。 パソコンの電源を落とす、日をあける…などいろいろトライしているのですが、なぜか消えてくれません そのフォルダーのwordの該当文書は開いて、編集などはできます 保存もできます。 削除ができません 移動もできません ファイル名の変更もできません word2010 windows7です

  • Excel2003でシート保護(オートフィルタ使用にはチェック)するとマクロのオートフィルタでエラーになる

    QNo.3901563で回答いただき、Excelの試用で保護後のオートフィルタは使えないのはわかりました。 そこで予めオートフィルタを設定し、シートに保護をかけました。 Excelの画面上ではオートフィルタは使用できます。 マクロよりオートフィルタの抽出条件を変更するコマンドを実行すると「保護されたシートに対して、このコマンドは実行できません」と表示されます。コマンドは新しいマクロの記録で操作を記録したものです。記録したときは特にエラーはでませんでした。 Selection.AutoFilter Field:=2, Criteria1:="AAA" マクロのコマンドでは保護のかかったシートのオートフィルタの抽出条件を変更することは出来ないのでしょうか。 マクロの前後にシート保護を解除するコマンドを入れようかとも思ったのですが、保護にパスワードがかかっており、本末転倒となるもので。

  • WORD VBA 繰り返し処理

    WORD VBAについて教えてください。 つぎのようなマクロがあり、これを検索する文字列がなくなるまで、繰り返して、処理するようにしたいのですが、どうすればよいのでしょうか? Sub Macro1() Selection.Find.ClearFormatting With Selection.Find .Text = "あ" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = False .MatchCase = False .MatchWholeWord = False .MatchByte = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = False .MatchFuzzy = True End With Selection.Find.Execute Selection.MoveRight Unit:=wdCharacter, Count:=1 End Sub

  • EXCEL2007 VBAで選択領域に写真を表示できません。

    EXCEL2007 VBAで選択領域に写真を表示できません。 どなたか教えてください。使用OSはVistaでEXCEL2007を使用しています。 2003では正常に表示されていた、そのままの内容のマクロを使用しているのですが、 なぜか、写真が指定した位置に貼り付きません。 2003と2007では何かが違っていて、別の内容のマクロにしなければならないのでしょうか? 実際のマクロを以下に記します。このマクロの内容は、 マクロの実行中に貼り付ける写真ファイルを指定して、マクロ実行前に選択していた領域の中 に写真を貼付け、縦幅と横幅から計算した縮尺で、サイズを調整して領域の中央にちょうど収 まるようにしています。 2007では、表示される位置は違いますが、サイズ調整だけはうまくいっているようです。 厚かましいお願いで申し訳ありませんが、どうぞよろしくお願いいたします。 Sub TEST() ' Dim SR As Range, PN As String, SN As String Set SR = Selection PN = Application.GetOpenFilename("写真ファイル(*.jpg),*.JPG", 2, _ "写真ファイルの指定", , False) Call PIC(SR, PN, SN) 'Range("SHAPENAME").Cells(1, 1) = SN ' 後で消すためのシェイプ名をシート内に記入 ' End Sub Sub PIC(SR, PN, SN) ' SR.Select ' 写真貼付領域を選択 SH = Selection.Height ' 貼付領域の高さ SW = Selection.Width ' 貼付領域の幅 ActiveSheet.Pictures.Insert(PN).Select ' 写真ファイル貼付 SN = Selection.ShapeRange.Name ' シェイプの名前を記録 RH = Selection.ShapeRange.Height ' 写真情報の高さ RW = Selection.ShapeRange.Width ' 写真情報の幅 S1 = SH / RH ' 高さから決まる縮率 S2 = SW / RW ' 幅から決まる縮率 SC = WorksheetFunction.Min(S1, S2) ' 縮率の最小値 With Selection.ShapeRange ' 写真情報の .Height = RH * SC * 0.995 ' 高さを調整 .Width = RW * SC * 0.995 ' 幅を調整 .IncrementTop (SH - RH * SC) / 2 + RH * SC * 0.005 ' 上端の位置を調整 .IncrementLeft (SW - RW * SC) / 2 + RW * SC * 0.005 ' 左端の位置を調整 End With ' End Sub

  • エクセルマクロVBAコピー領域と貼り付け領域の違い

    お世話になっております。 下記のマクロについて、ご指導願います。 試作研究費マクロ.xlsというファイルのマクロについてです。 試作研究費明細作成マクロ1()を実行すると、試試作研究費マクロ.xlsというファイルに貼りつける ファイルを選択できるようになっており、それを選択すると、試作研究費マクロ.xlsに貼りつけられる 仕組みになっているのですが、エラーになります。 、「コピー領域と貼り付け領域 の違いでデータを貼り付けることが出来ません。 」というメッセージが出てきて処理できません。 デバックによると、下から二行目のActiveSheet.Pasteの部分が黄色く塗りつぶされています。 最近エクセル2007にしたのですが、エクセル2000で作成したマクロは使えないのでしょうか? エクセル2000の時は問題なくできていたのですが。 何が原因なのかわかりかねますので、ご指導の程、よろしくお願いいたします。 Sub 試作研究費明細作成マクロ1() ' ' 試作研究費明細作成マクロ1 Macro ' マクロ記録日 : 2011/11/11 ユーザー名 : ' ' Dim myFile myFile = Application.GetOpenFilename() If myFile = False Then Exit Sub Workbooks.Open Filename:=myFile Cells.Select Selection.Copy Windows("試作研究費マクロ.xls").Activate Cells.Select ActiveSheet.Paste Range("F11").Select End Sub

  • エクセルVBAでのシート保護解除の操作方法

    VBAで2ファイル間でデータコピーのマクロを実行中の時に「変更しようとしているセルまたはグラフは保護されているため、読み取り専用となっています。」というエラーがでます。こういう場合の保護解除のマクロ操作を教えてください。

  • ワード文書をPDF化するときにエラーが出ます!

    ワードを実行中に組み込んだ「Acrobat PDFMaker5.0」を利用して実行中の文書をPDF化する時に「文書に編集保護が設定されているため・・・・。保護を解除してからPDFMakerを実行してください。」とメッセージが出る。 1)「文書の編集保護」とは何か? 2)保護を解除するにはどうすればよいのか? エクセルのファイルは実行中でもPDF化できるが...

  • (AcadLisp/VBA) 事前選択して処理

    AutoCAD2004のVBAマクロで、"あらかじめ選択したオブジェクト"を処理する方法を探しています。 選択中のオブジェクト情報は、PickFirstSelectionSetで取得可能なのは分かりました。ただ、ボタンにマクロを登録しようと思うと、vbarunコマンドの実行で選択解除されてしまい、役に立ちません。。。  '例) -vbarun "module1.myfunc"  sub myfunc   msgbox ActiveDocument.PickFirstSelectionSet.Count  End sub 選択解除せず実行する方法(VBE上でF5以外に)や、その他なにか・・・ Lisp側で選択図形の情報を取ってVBAに渡す手もありっぽいですが、Lispよく知らないのでうまく動かず試行錯誤中。ssgetは表示範囲のみらしいのが課題になりそうだと分かり、心折れかけてます。 何かご存知でしたら教えていただけないでしょうか;