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

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

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

このQ&Aに関連する最新のQ&A

A 回答 (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 は、取り去ってください。ただ、なるべく、両方削除したほうがよいようです。そうしないと、シートが重くなってしまいます。
    • good
    • 0
この回答へのお礼

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

お礼日時:2005/10/19 11:05

こんばんは。



#2 で書いた、Wendy02です。

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

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

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

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

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

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

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

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

お礼日時:2005/10/13 22:59

すみません。

よく読まないまま回答していました。

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


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

この回答への補足

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

補足日時:2005/10/11 01:30
    • good
    • 0

こんばんは。



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

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

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

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

この回答への補足

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

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

補足日時:2005/10/11 01:30
    • good
    • 0

エクセル2003ですが。



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

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

この回答への補足

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

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

補足日時:2005/10/11 00:05
    • good
    • 0

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人はこんなQ&Aも見ています

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

このQ&Aと関連する良く見られている質問

QEXCEL セルの書式設定を固定したい

EXCEL2007を使っています。
関数の入っていない普通のセルに
書式設定で「折り返して全体を表示する」「左寄せ」に設定していても
メールに記載された情報をコピペして貼り付けると、
「折り返して全体を表示しなくなったり、中央揃えになったり、
縦二つのセルに結合されてしまったりします。
コピーした情報によると思いますが、
どんな情報を貼り付けても書式が固定されたままにする方法はないでしょうか?

Aベストアンサー

コピー貼り付けは、書式なども含めてコピー元の状態が移るのがよいところであり、今では約束事です。
設定などを増やすことは、ややこしくするだけと思います。
形式を選択して貼り付けを使うことになっっている。
徐々に「貼り付け先の書式に合わせる」が選択しやすくなっているようですが。

QEXCEL 表の書式のみ変更不可(保護)したい

社内書式としてEXCELでいろいろ表を作成し、不特定多数がそれをコピーして使用しています。
ですが、数ヶ月もたつと書式が崩れてくるものが多数出てきます。具体的には、
・いらない罫線が引かれている
・罫線の種類が変わっている
・入力文字の表示形式が変更されている   等々
多分他から文章などをコピーして張り付けたりするから段々変わってしまっているのだと思います。

そこで文字や数式の入力は普通に出来るが、書式のみ変更が出来ないようにしたいのですが、どうしたらいいでしょうか。

当方EXCELのバージョンは2007ですが、まだ2003を使用しているものもおりますので、保存書式は97-2003となります。
ですので、その両方で有効な手段を教えてください。
よろしくお願いいたします。

Aベストアンサー

2003でもシートの保護のアイテムにセルの書式とか
列の書式とか個別に選択出来たと思いますよ。

Qエクセルの書式を固定したい

毎月決まった書式で報告を受けております、
自分が作成したもののため、相手によっては、列、行
幅を変えてメールに添付する方がいて困っております。

表の列、行等を相手が変えられないようにする方法は
無いものでしょうか?
しかし 文字、数字は入力してメール添付して返してもらうのですが。よろしくお願いします。

Aベストアンサー

#2です。

Excelを開くとSheet1、Sheet2・・・と出ますよね。

Sheet1に現在の書式があるものとします。

1 Sheet1の列Aの左、行1の上の四角の部分をクリックします。(Sheet1全体が選択されます。)

2 編集→コピーを行いSheet2のA1セルをクリックし、貼り付けます。(シートのコピーの仕方は他にもあります)

3 ここで数値の入っているセルがB1セルと仮定します。
Sheet2のb1セルをクリックし、"=Sheet1!b1"と入力して下さい。

4 Sheet2のb1セルをコピーし、Sheet2の入力すべ
きセルに貼り付けます。

これで、Sheet1の値を変更すると、Sheet2に反映されます。

5 Sheet2で書式部分を選択します。書式→セル→セルの書式設定が表示されます。保護 タブを選択し、ロックにチェックマークを入れます。

6 ツール→保護→シートの保護→チェックとパスワード→OK と押します。
これで、Sheet2が保護されました。保護されたセルに何か入力してみて下さい。エラーメッセージが表示されます。

この作業でSheet1を入力シート、Sheet2を出力シートとして、報告にはSheet1にデータを入れてもらえば、Sheet1の書式をどれだけ変えられても、Sheet2は希望どおりの書式となっているというものです。

わかりにくい説明ですが、いかがでしょうか

#2です。

Excelを開くとSheet1、Sheet2・・・と出ますよね。

Sheet1に現在の書式があるものとします。

1 Sheet1の列Aの左、行1の上の四角の部分をクリックします。(Sheet1全体が選択されます。)

2 編集→コピーを行いSheet2のA1セルをクリックし、貼り付けます。(シートのコピーの仕方は他にもあります)

3 ここで数値の入っているセルがB1セルと仮定します。
Sheet2のb1セルをクリックし、"=Sheet1!b1"と入力して下さい。

4 Sheet2のb1セルをコピーし、Sheet2の入力すべ
きセル...続きを読む

Qエクセルでの指定文字 カウントについて

エクセルで並んだデータでの指定した名前だけの個数をカウントするにはどうすればいいのでしょうか?

山田 高橋 佐藤
高橋 梅田 赤田
 西 山田 梅田
佐藤 山田 梅田

名前が並んだデータで「高橋」という名前が何個あるのかをカウントしたいのですがどうすればいいのでしょうか?

Aベストアンサー

 データは入力されているセルの範囲を「A1:C4」とすれば、

=COUNTIF(A1:C4,"高橋")

Qエクセルで打ち込んだ数字を自動で別シートに表示したい

エクセルでセルに打ち込んだ数字を自動で別シートに表示できる方法があれば、教えてください。

例えば、シート1のC1に5を打ち込んだら、シート2のD2にシート1で打ち込んだ5が自動で表示される。

また1列すべてを自動で表示させる場合、一つのセルの時と違いがありましたら教えてください。よろしくお願いします。

Aベストアンサー

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コピー&リンク貼り付けを使うと便利です。

例)例)シート1のC1~C5に何かを入力したら、
  シート2のD2~D7にシート1で打ち込んだものが自動で表示される

  シート1にあるコピー元のセルを範囲選択して、
  シート2のD2の上で「右クリック」⇒「形式を選択して貼り付け」
  をクリックします。

  そして出てきた小さな画面の左下にある「リンク貼り付け」という
  ボタンをクリックすると完成です。
  試してみてください。。

  念のためにリンク貼り付けを図解しているURLを載せておきます。
  参考にしてみてくださいね。。
  http://www.geocities.jp/office_inoue/excel/eq21.htm

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コ...続きを読む

QExcelで貼り付け前の書式設定を保持

タイトルのままですが、
形式を選択して貼り付け→値
とかせずに、貼り付けだけしても、
その行や列に設定したフォントやサイズが保持される
書式の固定方法みたいのがあれば教えて下さい。

Aベストアンサー

EXCEL2002であれば、「コピー」→「貼り付け」すると右下にスマートタグが出てきますので、そこから「貼り付け先の書式と一致させる」を選べば値貼り付けと同じになります。
ですが、EXCEL2000もEXCEL2002もマウスで右ドラッグ(右側のボタンを押してドラッグ)して、離した時に出てくるメニューから「ここに値のみをコピー」を選択するのが一番手っ取り早いかと・・・。
あまり参考にはならないかもしれませんが。

QエクセルのIF関数で、文字が入力されていたならば~

エクセルのIF関数で文字が入力されていたならば~、という論理式を組み立てたいと思っています。

=IF(A1="『どんな文字でも』","",+B1-C1)

A1セルに『どんな文字でも』入っていたならば、空白に。
文字が入っていなければB1セルからC1セルを引く、という状態です。

この『どんな文字でも』の部分に何を入れればいいのか教えてください。

またIF関数以外でも同様のことができれば構いません。

宜しくお願いします。

Aベストアンサー

=IF(ISTEXT(A1),"",B1-C1)

でどうでしょうか?

Q文字列として"(ダブルコーテーション)を表示させる方法

こんにちは。文字列として、ダブルコーテーションを表示させるには、どうすればよいのか教えてください。m(__)m


例えば、
<font size="2">あいうえお</font>

というタグの「あいうえお」の部分が、セルA1にあった場合、

="<font size="2">"&A1&"</font>"という表示にしたいのです。

"2"のダブルコーテーションも文字列として表示させるには、どうすればよろしいのでしょうか。

教えてください。よろしくお願い致します。

Aベストアンサー

こんにちは~

表示形式は 「標準」 のままで、
ダブルコーテーションを、ダブルコーテーションで囲んでください。

""2""

="<font size=""2"">"&A1&"</font>"

としてみてください。

Q【Excel】特定の文字を含むセルをカウントしない方法

エクセルで特定の文字列(仮に「key」とします)を"含む"場合の関数は、

=COUNTIF(A1..A20,"*key)

で処理できるのは分かっているのですが、

特定文字列(key)を"含まない"場合の処理方法が分かりません。
VBAなどを介さずに関数だけで処理する方法がありましたら、ご教示願います。

Aベストアンサー

=COUNTIF(A1:A20,"<>*key*")
でできませんか?

Qエクセルの書式設定が解除できません。

他のソフトよりデータをエクセルに取り込んだのですが、セルの表示形式がどうしても解除できません。
セルの書式設定の保護タブの「ロックする」のチェック
マークもはずしたのですが、内容の数値を変更して入力
するとなぜか解除できないユーザーの定義の書式で表示されます。書式設定の表示形式がユーザー定義の
--月--日に何回変更しても戻ってしまいます。
エクセルの設定で解除できると思うのですが、、。
すみませんがご教授ください。

Aベストアンサー

ご質問の回答になっているか分かりませんが・・・
「3/1」などの日付として認識されてしまうデータを入力すると、セルの書式が「3月1日」となってしまいます。
その後、「100」と入力しても、「4月9日」と表示されます。

設定された日付の書式を標準の書式に戻すには、

(1)書式を戻したいセルを選択。
(2)<書式>→<セル>をクリック。
(3)<セルの書式設定>ダイアログボックスの<表示形式>タブをクリック。
(4)左側の<分類>の一覧から「標準」をクリック。

また、保護タブの「ロック」はシートの保護などをしていない限り、あまり意味は無いと思います。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報