質問

こんばんは。
エクセルであるデータ管理をしたいと思っているんですが、先に表を作り、その書式設定だけを固定というか、保護って出来ないんでしょうか?

サイトにあるリンクをデータとして残したいんです。
表示されているリンクの文字が「goo」だけどリンク先はURLみたいなやつです。
で、そのリンクの文字をコピーしてエクセルに貼りつけるとハイパーリンクでコピーされますよね?
問題はセルが勝手に結合されてセルがグレーに塗りつぶされ、文字が小さくなる事です。
その為、データを増やすたびにセル結合を解除して文字を大きくしてセルの色を変えなければいけないので、書式だけを最初から固定して、リンク先をコピーしても書式は変わらないようにしたいのです。

方法ありましたら是非教えてください。

通報する

回答 (5件)

yukki2929様

ここをフィードバックするようでしたら、試してみてください。

私の使っているマクロを実情に合わせて再検討して、いくつかのケースに備えるようにしてみました。ただ、私個人の目的とは違うので、不具合はあるかもしれません。良く試してみてください。

そして、このマクロは、個人用マクロブックの標準モジュールに登録したほうがよいと思います。

標準モジュールです。記録マクロで名前だけ入れて、個人用マクロブックに入れると簡単です。

Sub DelFormatHTMLPaste()
  Dim Rng As Range
  Dim c As Range
  Dim shp As Shape
  Set Rng = Selection
  For Each c In Rng
   '結合戻し
   With c
     If .MergeCells Then
      .MergeCells = False
     End If
     'サイズの10以下は、10にする
     If .Font.Size < 10 Then
      .Font.Size = 10
     End If
   End With
  Next c
  'スクリプトの削除
  For Each shp In ActiveSheet.Shapes
   If Not Intersect(shp.TopLeftCell, Rng) Is Nothing Then
     If shp.Type = msoScriptAnchor Or shp.Type = msoPicture Then
      shp.Delete
     End If
   End If
  Next shp
  '書式戻し
  With Rng
   .WrapText = False
   .AddIndent = False
   .ShrinkToFit = False
   .Interior.ColorIndex = xlNone
  End With
  Set Rng = Nothing
End Sub

ツールボタンの設定の仕方:

メニューの表示-ツールバー-ユーザー設定で、
コマンド[タブ]-マクロ-設定ボタン(ニコチャンマーク)をドラッグ

設定したボタンの編集-マクロの登録
マクロの保存先(A)-PERSONAL.XLS
登録した名前(DelFormatHTMLPaste)を選択→OK


後は、再び、
 設定したボタンの編集で、
  ・ボタンのイメージの編集
  ・ボタンのイメージの変更
  ・名前の編集 (例:書式調整(&F)

などを使って、見栄えを良くしてください。

p.s. 私は、気が付かなかったけれども、そのままHTML画面を貼り付けると、見えないものが一杯入るようです。スクリプトなどが入り込みますから、一応、ScriptAnchor と Picture だけは取り去るようにしました。もしPictureのほうを残したかったら、上から、shp.Type = msoPicture は、取り去ってください。ただ、なるべく、両方削除したほうがよいようです。そうしないと、シートが重くなってしまいます。

この回答へのお礼

お返事遅くなって大変申し訳ありません。
詳しく教えていただけて嬉しいです!
マクロは少しづつですが勉強中です。
Wendy02さんの例で一度試してみます。
ほんとうにありがとうございました!!

こんばんは。

#2 で書いた、Wendy02です。

>リンクをコピーして貼りつける際、なんでセルの結合しちゃうんですかね・・・。
>リンクはハイパーリンクで貼りつけたいのです。

意味は、分りました。
ハイパーリンクのままで、書式はExcel側のものにしたいというわけですね。

私個人は、「形式を選択して」を使わずに、ワークシートに貼り付けて、必要なものだけを残して、後は、Excel側の書式にするというマクロを使っています。
(ただし、おっしゃるものとは、若干違い、掲示板で空白やコンマ区切りを、各セルに割り当てるというようなことまでします。)

単に、書式レベルでしたら、記録マクロでも出来ますから、それを作って、個人用マクロブックに入れて、それをツールボタンを付けてみたらいかがですか?

この回答へのお礼

こんばんは!そうです、そうです。>リンク

やっぱりマクロとかですかぁ。
実は、マクロって使った事が無いんです。
過去に何度か「マクロ使ってみようかな~」と、開いてはみるんですけど、イマイチ使い方が解らずそれっきりです(苦笑)

でも、マクロなら私の望みは叶うんですね・・・。
この機会なんでマクロ関係調べてみます。

何度もありがとうございました!!

すみません。よく読まないまま回答していました。

バージョンは何でしょう?2003なら、
ツール-オートコレクトのオプション-入力オートフォーマット-インターネットとネットワークのオプションをハイパーリンクに変更する
のチェックをはずしてみてください。


もしくは、コピーした後、「形式を選択して貼り付け」からテキストを選ぶか、貼り付け後に[!]を選択してもとの書式を...を選択してください。

この回答への補足

こんばんは。何度もすいません(苦笑)
言葉足らずで混乱させてしまってごめんなさい!!
リンクのコピーはエクセルに貼りつける際、ハイパーリンクでOKです。これについては問題ありません。
問題はOsieteG00さんが最初にアドバイスをくれたような内容です。
「書式設定の保護が出来ないか?」ということです。
エクセルは2000です。
よろしくお願いします。

こんばんは。

>サイトにあるリンクをデータとして残したいんです。
>表示されているリンクの文字が「goo」だけどリンク先はURLみたいなやつです。
>で、そのリンクの文字をコピーしてエクセルに貼りつけるとハイパーリンクでコピーされますよね?

方法は、いくつかありますが、一番簡単なのは、コピーしたら、
マウスを右クリック-形式を選択して貼り付け-テキスト を選びます。

ただ、URLが、中に含まれているようなものは、コピーする時に、右クリックして、その中のプロパティを抜き出しますね。

事情が違っていたら、ごめんなさい。また、考えます。

この回答への補足

こんばんは。
リンクはハイパーリンクで貼りつけたいのです。
これについては問題ありません。

言葉足らずだったかも、誤解させてしまってごめんなさい。

エクセル2003ですが。

ツール-保護-シートの保護

にて、お好みの書式設定を保護してみてください。

この回答への補足

こんばんは。
シートの保護でやってみたんですが、リンクを貼りつけると「クリップボードに保存されているデータの大きさや形が、指定された領域と異なります。貼り付けますか?」→「結合されたセルの一部を変更することはできません。」とメッセージが出てコピーできませんでした・・・(涙)

そもそも、リンクをコピーして貼りつける際、なんでセルの結合しちゃうんですかね・・・。
スタイルの変更を使っても最初から「セルを結合するに」チェックがついており、チェックを外せないんです。

このQ&Aは役に立ちましたか?2 件

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

新しく質問する

このQ&Aを見た人が検索しているワード


新しく質問する

このカテゴリの人気Q&Aランキング

毎日見よう!教えて!gooトゥディ

べんりQ&A特集