• ベストアンサー

Excelの条件付き書式のコピー

end-uの回答

  • end-u
  • ベストアンサー率79% (496/625)
回答No.4

一応、Win32APIを使わない簡易版もあります。 '----------------------------------------------------------- Option Explicit Sub try2() '条件付き書式があるシートをActiveにして実行。   Dim ws As Worksheet   Dim tmp As String   Dim buf As String   Dim n  As Long     Application.ScreenUpdating = False   '作業用mhtファイル名を設定。 _    同名既存ファイルがあれば上書きするので注意。   tmp = Application.DefaultFilePath & "\temp.mht"   Set ws = ActiveSheet   ActiveWorkbook.PublishObjects.Add( _       xlSourceSheet, tmp, _       ws.Name, "", _       xlHtmlStatic).Publish True     '作業用mhtファイルOpen。   n = FreeFile   Open tmp For Input As #n   buf = StrConv(InputB(LOF(n), #n), vbUnicode)   Close #n   '---置換作業---   '途中改行があれば削除。   buf = Replace$(buf, "=" & vbCrLf, "")   'とにかく"ignore:"を消せばいいかな。   buf = Replace$(buf, "mso-ignore:", "")   '--------------     '作業ファイル書き込み直してOpen。   n = FreeFile   Open tmp For Output As #n   Print #n, buf   Close #n     Workbooks.Open tmp   Set ws = Nothing   Application.ScreenUpdating = True End Sub '----------------------------------------------------------- [Webページとして発行]した後に開き直すだけですけど。 (2003以前のバージョンは書式固定の為に置換してます) マクロ実行後、mhtファイルが開きますから必要なセル範囲をコピーしてください。 処理済んだらmhtファイルは手動で削除してください。 (カレントフォルダに保存されています)

関連するQ&A

  • Excelでの条件つき書式の張り付けについて

    Excel2007にて、1シート全体に、条件つき書式の設定をしました。 (シート内で値がAのときはセルの背景を緑にする、などの条件) シート内のセルをコピーし、同シート内に張り付けたところ、 張り付け部分のみ範囲指定された、 セル全体に設定した内容と同じ条件が作成されてしまい、 張り付けをすればするほど条件が増えて、 ファイル容量がどんどん大きくなってしまいます。 条件は増やさず、コピーしたセルの内容だけを張り付けることは できないのでしょうか。 上手く設定できず恐縮ですが、どうぞ知恵をお貸しください。

  • 条件付き書式をコピーしたい エクセル2007

    A1に条件付き書式を設定しています。 =LENB(A1)>200 これをA2や,それ以外にもコピーしたいのですが,どうすればいいのでしょうか? 書式のコピーを使うと罫線やセルの色まで変わってしまうので,使えません。

  • エクセル2010条件付き書式

    いつもお世話になっております。 質問です、宜しくお願いします。 条件付き書式についてですが、2010にしてから上手く出来ません。 具体的には、A列に入力した数値とB列に入力した数値が違うときに赤色で塗りつぶすというものです。 エクセル2007では、簡単に出来たのですが2010ではうまく出来ません。 条件付き書式→新しいルール→指定の値を含むセルだけを書式設定→セルの値 →次の値に等しくない→B1を選択 書式で塗りつぶし「赤」を選択。 これでA1とB1の数値が違っていれば、赤で塗りつぶしになります。 A2・・・・以降コピーしても書式がコピーされません。 どのようにすれば出来るのか教えて下さい。 文章でうまく伝えられていないと思いますが宜しくお願いします。

  • 条件付き書式のコピーについて

    シート1のセルとシート2のセルが一致しない場合、書式の変化が発動するように設定しようとしています。 現在、シート1のセルA1の書式設定に、 「次の値に等しくない」 「=INDIRECT("Sheet2!$A1")」 と入力されています。 この時点でシート1のA1は正常に書式が発動されました。 そこでシート1のA列すべてに書式をコピーしたいのですが、コピーをするとすべてのセルの書式が「=INDIRECT("Sheet2!$A1")」となってしまいます。 「=INDIRECT("Sheet2!$A1")」 「=INDIRECT("Sheet2!$A2")」 「=INDIRECT("Sheet2!$A3")」・・・・ となってもらいたいのですが。 コピー方法はセルA1の書式設定したあと、マウスの右ドラックをして「書式のみコピー」を選択して実行しました。 どこか間違っていますでしょうか。

  • Excel 2007: 条件付き書式がコピーするたびに増える

     XP でExcel 2007 を使用しています。  あるセルの条件付き書式を他のセルへコピーしようとしていますが、コピーを行うたびにコピー先の条件付き書式の数が増えていきます。  これを増えないようにするにはどうすればいいのでしょうか。  例えば、AJ21 に条件付き書式を設定し、それをAJ22 にコピーすると(形式を選択して貼り付け -> 書式)、AJ21 で設定した条件付き書式がAJ22 にコピーされますが、コピーを再度行うと、この書式がふたつ、みっつと増えていきます(添付の画像をご覧下さい)。  条件付き書式は上書きされると思っていたのですが、違うのでしょうか。

  • 【EXCELエクセル】セルの書式設定だけコピー・ア

    【EXCELエクセル】セルの書式設定だけコピー・アンド・ペーストしたいです。 ショートカットキーを教えて下さい。 やりたいこと セル右クリック→書式設定→罫線→細い線を選択→セルに斜め線を入れる これを違う離れているセルにも書式設定だけコピーして斜め罫線を入れたいです。 書式設定だけコピーするショートカットキーを教えて下さい。

  • Excelの条件付き書式、直接入力と参照した数値は違う?

    Excelの条件付き書式、直接入力と参照した数値は違う? Sheet1のA1セルの数値を Sheet2のA1セルが「=IF(Sheet1!A1="","",Sheet1!A1)」という数式で参照しています。 数値に、「%以上」という文字列を追加したいので、 Sheet2のA1セルの書式設定を、ユーザー定義で「0"%""以""上"」としています。 Sheet1のA1セルに数値を入力 → Sheet2のA1セルが参照 → ユーザー定義で「○%以上」と表示させる。 ・・・ここまでは簡単にできました。 さらに、数値が表示されたときにセルの色を赤くしようと、 条件付き書式で、 「セルの値が 次の値以上 0」 と設定したのですが、入力が無くても赤いままになってしまいます。 設定を、 「セルの値が 次の値以上 ="0"」とか、 「セルの値が 次の値より大きい 0」とか、 いろいろとやってみましたがどうしてもうまくいきません。 参照ではなく、セルに直接入力するのであればこれでうまくいっていましたので、簡単に出来るものだと思っていたのですが、 これはたぶん、私が根本的なことをわかっていないのだと思います。 ご教授頂けましたら助かります。

  • EXCELの条件付き書式でできますか?

    セルA1からセルA8までの中で、最大の値が入っているセルに背景色(塗りつぶしの色)をつけたい。値が直接数値で入力された場合と、式で計算された場合とに分けて方法が異なれば、それぞれ知りたい。条件付き書式でできれば有り難いのですが。

  • Excel 条件付き書式のコピー

    [条件付き書式]の使い方は分かっているのですが(と思います)、ある条件(数式)を入れて他のセルにコピーすると、参照しているセルが絶対値になってしまいます。 ちょっと上手く説明できないのですが。。。 ----------------------- A列   B列    C列 001  あいうえお  A 002  かきくけこ  B 003  さしすせそ  B 004  たちつてと  A ----------------------- エクセルの表は上記のようになっていて、C列の値が[A]の場合はA列のセルのパターンを赤にする、というような事をやりたいと思っています。 それで[001]のセルに条件付き書式で"数式が[=$C$1="A"]"という条件を付け、形式で書式だけ選択して他のA列のセルにコピーすると[002][003][004]・・・と全部に[$C$1]という値を参照する条件がコピーされてしまいます。それを、それぞれの行のC列を参照するようにするには、どうしたら良いでしょうか? 説明が上手くなくて長くなってすみません。 よろしくお願いします。

  • 条件付書式だけのコピー

    Excelで既存のファイルに条件付書式を設定したいと考えています。 ただし元ファイルには、既に罫線・網掛け等をされているので、条件付書式だけを全体のセルにコピーしたいのです。 そのような方法はあるのでしょうか。 よろしくお願いします。