[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『比べ』(11)
お世話になります。 2つのブックがあり、そのうちSheet1どうしの変更場所を 2つのSheet1のBA1〜に何処が違うのかを?表示出来ないのでしょうか? A1はBA1,B1はBB1と言う具合に・・セルの文字、数字、文字色、セル色 すべてを対象にしたいのですが・・・ BA1〜の表示方法は"違"と表示出来ればよいのですが。(11) ---- そんなの無理じゃ?私も前から欲しいと思ってました〜けどネ!(popa)
やはり駄目でしょうか? まだ、望みは・・・・・(11)
[セルの書式全てを含む] ということでしょう? できるでしょうが、書く気にはなりませんね... (seiya)
↓の様な事ではなく? [[20080604205809]]『相違部分検索』(相違文字)
ブック間でも使えそうなので、リンク先の不具合を アチラで訂正してみましたが・・・。
(HANA)
ありがとうございました。 でも上記のは、セル色、文字色まで比べられないのと Sheet1とSheet2の相違ですよね・・・ (行)
確かに、最初のコメントは Sheet1とSheet2の相違をSheet3に書き出すサンプルですが これは変更可能です。
名前の定義を表示させたいセル番地をアクティブにした状態で行う事 名前の定義に使う数式を、参照先のセル番地に変更する事
また、セル色・文字色まで比べられる物を 私は書いております。
前回の方もそうでしたが 「試してみる」おつもりが無いのであれば コメントする言葉は持ち合わせておりません。
(HANA)
HANAさん、 [セルの書式全てを含む] 私の解釈では ざっと考えただけでも、 Interior (Character)Font (Color/Name/Bold/Italic/Underline/SuperScript/Subscript) Borders top/bottom/left/right/diagonal(up/down) Borders Line (Style/weight) Comment/FormatConditions/Validation Entire(Column/Row) Visible etc...
11さん あなたの[セルの書式全てを含む]を全て列記できますか? ^^^^^^^^^^^^^^ (seiya)
何だか難しそうなので・・・出来ません。 (行)
私が書いているのは、最初に(11)さんが書いておられる >セルの文字、数字、文字色、セル色 のすべて です。
seiyaさんが思っておられる「すべて」とは違いますので その点ご了承下さい。
ところで(行)さんってどちら様ですか? (11)さんなら、誰へのコメントですか?
先にも書いていますが、私の設定は >セルの文字、数字、文字色、セル色 を見比べるものです。 それでもよろしい場合で 設定をやってみる気はあり やってみたが希望する結果に成らない様である。 と言うことであれば、その旨お書き下さい。 私は上記設定で希望する結果を得られますので そちらで行ったどこかの設定に問題があるのだと思います。
但し、「難しそうなのでやりません」と言うのであれば それでもやってみなさいと言うつもりはありません。
一つのブックに付、 一つのセルに対し名前の定義を4回と 結果を出す数式を一つ作成し、 あとはフィルドラッグ を2つのブックで行うだけなんですけどね。
(HANA) ---- もう辞退いたします。 この学校は答えを教えてくれるのかとおもいました。 都合は良いかもしれませんが・・ 他の掲示を見ていましたが(HANA)さんは、答えをいただけないのが 目につきます。。学校だから勉強を?怒らないで下さい。 でも皆、答えを欲しくて掲示している方のほうが多いのでは? (11)
これだから“ゆとり”は… (DSDS)
> セルの文字、数字、文字色、セル色 の全てということなら、 1) コードにある boo2.xls (2箇所) を実際のファイル名に変更 2) book2.xls は開いておいてください
これで試しては? (検証していません)
Sub test() Dim x As Long, y As Long Dim rng1 As Range, rng2 As Range With ThisWorkbook.Sheets("sheet1") Set rng1 = .Range("a1",.Cells.SpecialCells(11)) '<- 修正 End With With Workbooks("book2.xls").Sheets("sheet1") Set rng2 = .Range("a1", .Cells.SepcialCells(11)) End With x = Application.Max(rng1.Rows.Count, rng2.Rows.Count) y = Application.Max(rng1.Columns.Count, rng2.Collumns.Count) With ThisWorkbook.Sheets("sheet1").Range("ba1").Resize(x,y) .Formula = "=if(isdifferent(a1,'[book2.xls]sheet1'!a1),""違"","""")" .Value = .Value End With End Sub
Function IsDifferent(r1 As Range, r2 As Range) As Boolean IsDifferent = ((r1.Value = r2.Value) * _ (r1.Interior.ColorIndex = r2.Interior.ColorIndex) * _ (r1.Font.ColorIndex = r2.Font.ColorIndex)) = 0 End Function (seiya) 修正
「希望を叶えたければこのように設定して下さい。 この設定をすると、ご希望の様になりますよ。」 これは、答えではないですか?
私がそちらへ出向いて設定する事が出来ないのですから そちらでやってもらうしかないでしょ?
それをする気がないのであれば 私にはどうすることも出来ません。
わからなくてもやってみよう と言う気があるのであれば 出来るだけ詳しく手順は載せますよ。
答えにたどり着けるような道はつけたいと思っています。 途中で歩くのをやめるか、やめないかはその人次第です。
今回私が載せた方法は、マクロではありません。 ワークシートに設定をするものです。 たとえば、 「A1:A10の範囲の合計をA11セルに出したい」 と言う質問があった場合に 「それでは、A11セルに =SUM(A1:A10)を入れて下さい。」 と言っているのと同じことです。 これだと、「回答している」と思われますか? でしたら、これまでも回答しているのですよ。
『あるセルにここに載せた式を入れる』 このことは、私がこちらでいくらがんばっても 出来ることではありません。
同様に、『あるセルにここに載せた式を入れて名前の定義をする』 このことも、私がこちらでいくらがんばっても 出来ることではありませんよね?
それとも、何か方法がありますか? あるのでしたら、教えて下さい。 私も、貴方のご希望がかなえられるのが良いと思っていますので。
(HANA)
そうですね。。 (seiya)さんの式をいれましたが下記のエラーが出てしまい? インデックスが有効範囲にありません。実行エラー"9"
With Workbooks("book2.xls").Sheets("sheet1") book1book2の名前のままで行いましたが。。(11)
比較するファイル名かシート名が違うのだと思いますよ? 1) Book2.xlsは保存されていますか? 2) もし2007をしようしているのなら、Book2.xlsx になります。 ^^^^^ それと、関数が逆の計算をしていたので修正しました。 (seiya)
ありがとうございます。 手順がちがうのでしょうか? 作業はBook1.xlsとBook2.xlsがありBook1.xlsに上記マクロを入れ 整列している状態で実行しているのですが? 新たに実行エラー438 オブジェクトはこのプロパティまたはメソットをサポートしていない との表示が?・・・・(11)
おっと、スペルミスが... Set rn1 = .Range("a1",.Cells.SpecialCells(11)) は Set rng1 = .Range("a1",.Cells.SpecialCells(11)) ^^^^ です (seiya)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.