既に過去例があるかもしれませんが見つけられず投稿します。よろしくお願いします。
たとえば、
2つのセルR1C1、R1C2があって、各々に数式が入っているとします。
この2つの数式自体が一致しているか否かを判定するにはどうすればよいのでしょうか?
ちなみに、
=IF (R1C1=R1C2,"○","×")
という条件式だと、数式の比較ではなくR1C1、R1C2に入っている数値(計算式に基づいた計算結果)の比較を行ってしまいます(当たり前だと思いますが)。
数値の比較ではなく、数式の比較をしたいのですが、どうすればいいのでしょうか?
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
#2です。
参考までに。また質問に対する、疑問の追加をします。
関数では不可能なんですが、ユーザー定義関数を作ると式が、出せます。
VBEの標準モジュールに
If a.HasFormula Then
siki = a.FormulaLocal
Else
siki = ""
End If
End Function
を貼り付け
たとえばB1に=A1+A2と式が入っているとして
どこかの空きセルに=SIKI(B1)とすると
=A1+A2が入ります
A6に=SUM(A1:A5)があれば=SIKI(A6)と入れると
=SUM(A1:A5)
となります。
-----
ただし
>数式自体が一致しているか
についてそう簡単ではないのではないですか。
(1)完全一致
たとえば両セルの式が=A1+A2
(2)パターンが一致
=SUM(A1:A5)と=SUM(C1:C5)
(1)は式を複写したセルは普通は番地(の一部)が変わるので、同じケース(2つのセル)は経験上あまり起こらない。
(2)は一番外枠の関数は同じでも、ネスとした関数が別なども考えられるので、同じかどうかは、判定解析が、プログラムを組む上で難物であると思う。
同じ様式の2つのシートの式を、誤って変えていないかののケースのチェックぐらいしか、現実問題は思いつかないのですが。
具体例はどんなものですか。
No.4
- 回答日時:
少々面倒ですが、以下の方法ではいかがでしょうか。
当該シートで、
「ツール」→「オプション」の
「表示」タブで、「数式」にチェックを入れる。
「全般」タブで、「R1C1 参照形式を使用する」にチェックを入れる。
「ファイル」→「名前を付けて保存..」で「テキスト(タブ区切り)(*.txt)」で保存する。
保存したファイルを改めてExcelから開く。この時、「テキスト ファイル ウイザード」で、(比較したいセルの入った)「列のデータ形式」を「文字列」にする。
No.3
- 回答日時:
こんにちは。
Ctrl を押しながら、Shift キーを押して @ で、
目視で比較したらいかがですか?
同じ式といっても、R1C1 方式だとは思いますが。
そうでないのでしたら、単に文字列比較ですが、セルポインターを、R1C3 に置き、
[挿入]-[名前]-[定義]
「名前の定義」ダイアログボックスで、
名前(W)
「siki1」 (任意)
参照範囲
「=GET.FORMULA(!RC[-2])& LEFT(NOW(),0)」
「追加」
名前(W)
「siki2」 (任意)
参照範囲
「=GET.FORMULA(!RC[-1])& LEFT(NOW(),0)」
「追加」
ただしく入ったか、確認してから、
「OK」
R1C3 に
=IF(siki1 = siki2, "○", "×")
入れ、後は、フィルハンドルで、ドラッグコピーします。
No.2
- 回答日時:
関数式は式の「値」を問題にするものです。
CELL関数以外は、値しか問題(代入・比較・演算など)にできません。それとそのセルに別の式を設定すると、もとの式はこわれてしまいます。
そのため関数で2つのセルの式の形の比較はできないと思います。
エクセルは当セルに式の表示はしてくれますので、目で見て比べろというのが、主義でしょう。
(1)VBAだと、範囲に式があるかはIf (Range).HasFomula Then で聞ける(HasFormulaプロパティがあり)、
(2)関数式を知るには
FormulaLocal
FormulaR1C1、
FormulaR1C1Local
がありますので、比較できます。
(3)プログラムするとき、2つのセルをどう指定させる(取り込むか)が
難しく、Inputboxなどで聞いていると、スムーズな自動化にならない。
Sheet1とSheet2が同じ位置のセルは、同じ式が入っているはず
とかの問題なら、10行内外の簡単なVBAコードで済みます。
何がしたいかという点を勘案して、よく考えてみてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 高校 方程式の証明 5 2022/05/12 09:29
- Excel(エクセル) エクセル シート比較で書式を変えるを繰り返したい 2 2023/05/05 11:25
- Excel(エクセル) エクセルVBAでセルに表示されているとおりの数値を取得したい(時間の計算結果) 1 2022/03/30 17:52
- Excel(エクセル) エクセルで書式設定とフィルタの組み合わせでうまく行かないのですが 4 2022/10/07 10:02
- Visual Basic(VBA) セルの値からファイルを複数作りたい2 3 2022/10/07 15:54
- Excel(エクセル) Excelについて質問があります。 関数の数値入力についてなのですが、 b1にー c1に数値 がある 1 2023/05/28 12:13
- Excel(エクセル) セルの値からファイルを複数作りたい 2 2022/10/06 12:42
- Excel(エクセル) ExcelのIF関数について 4 2023/05/24 12:54
- Excel(エクセル) エクセルの関数式を教えてください。 2 2022/11/29 21:09
- Excel(エクセル) エクセルでセルの文字列から年月を抜き出して今日の日付と比較したい 15 2022/07/29 14:39
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
エクセル・計算式をテキストデータとしてコピー
Excel(エクセル)
-
Excelでセル参照したとき、書式も一緒に持ってくるには?
Windows Vista・XP
-
含まない言い方ってどうしたらいいんでしょうか
日本語
-
-
4
Excel 書式の一致を調べる関数はありますか?
Excel(エクセル)
-
5
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
6
【Excel】数式をそのまま他のシートにコピーする方法
その他(Microsoft Office)
-
7
エクセル 文字数 多い順 並び替え
Excel(エクセル)
-
8
リンク元の日付が空白の時リンク先セルも空白にしたい
Excel(エクセル)
-
9
バッチでテキストファイルから任意の行のみ取得したい
その他(プログラミング・Web制作)
-
10
EXCEL VBA マクロ 実行する度に処理速度がどんどん遅くなる原因が知りたい
Excel(エクセル)
-
11
Application.ScreenUpdating = Falseが効きません
Visual Basic(VBA)
-
12
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
13
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
14
エクセル countif関数で、範囲を可変にするには
Excel(エクセル)
-
15
マクロの「SaveAs」でエラーが出るのを解消したいです(再)
Visual Basic(VBA)
-
16
実行時エラー 438になった時の対処法を教えて下さい。
Visual Basic(VBA)
-
17
VB.NETで DataRow()を利用して、値からコードを取得したい。
Visual Basic(VBA)
-
18
Vba Userformを前面に出すについて
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【エクセル】IF関数 Aまたは...
-
対象セル内(複数)が埋まった...
-
excelのCOUNTIF関数で、『範囲=...
-
エクセルで指定したセルのどれ...
-
EXCEL VBA セルに既に入...
-
エクセル 足して割る
-
【Excel】 セルの色での判断は...
-
貼り付けで複数セルに貼り付けたい
-
セルをクリック⇒そのセルに入力...
-
Excelで住所を2つ(町名迄と番...
-
エクセルのセルの枠を超えて文...
-
★★エクセルのテキストボックス...
-
Excelでのコメント表示位置
-
エクセルで複数のデータをセミ...
-
エクセルの一つのセルに複数の...
-
エクセル オートフィルタで絞...
-
LARGE関数 飛び飛びの範囲を指定
-
エクセル “13ヶ月”を“1年1ヶ月...
-
VBAで特定の文字が入力されたセ...
-
Excelで数式内の文字色を一部だ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで指定したセルのどれ...
-
【エクセル】IF関数 Aまたは...
-
対象セル内(複数)が埋まった...
-
エクセル 足して割る
-
Excelで数式内の文字色を一部だ...
-
貼り付けで複数セルに貼り付けたい
-
Excelでのコメント表示位置
-
セルをクリック⇒そのセルに入力...
-
EXCEL VBA セルに既に入...
-
excelのCOUNTIF関数で、『範囲=...
-
【Excel】 セルの色での判断は...
-
エクセル オートフィルタで絞...
-
エクセルのセルの枠を超えて文...
-
(Excel)数字記入セルの数値の後...
-
Excelで、「特定のセル」に入力...
-
エクセルの一つのセルに複数の...
-
複数のセルのいずれかに数字が...
-
excelの特定のセルの隣のセル指...
-
数式を残したまま、別のセルに...
-
ハイパーリンクの参照セルのズ...
おすすめ情報