Microsoft Excel 2007-リストなしのセルA1に基づいてセルC1を作成する数式


0

別のセルの内容に基づいてセルにExcelの場所のデータを作成する数式を作成しようとしていますが、Excelがデータを配置するセルに数式を含めることはできません。

以下の単純な式を使用してセルB1に配置すると、正常に機能します。 =IF(A1=1,"Okay","Nope")

セルA1に数値1を入力すると、ExcelはセルB1に「OK」を返し、A1が空であるか異なる数値を持っている場合はいいえを返します。

しかし、それは私が欲しいものではありません

A1に数字の1が含まれている場合、Excelはセル「C」に「Okay」という単語を配置/入力する =IF(A1=1,C1="Okay","")

明確にするために、これは別のセルの内容に応じて式に含まれるセルを更新しないことです。これは、テキストが配置されるセルに式が存在しない状態で、別のセルの内容に基づいて特定のテキストを別のセルに配置することです。

私にはとても簡単な仕事のように思えますが、それを実現する方法を見つけることはできません。

行方不明のものはありますか?

回答:


1

これは、VBAマクロを使用して実行できます。

Sub PutData()
    If Range("A1").Value = 1 Then
        Range("C1").Value = "Okay"
    Else
        Range("C1").Value = "Nope"
    End If
End Sub

最初にセルA1に値を入力してから、マクロを実行します。

もし必要なら:

  • マクロは、複数のセルを処理するように変更できます
  • マクロの実行は自動化できるため、A1を変更するだけでマクロが実行されます。

0

この問題に数式は不要なので、MACRO(VBAコード)が最適なソリューションです。そして、プロセス全体を自動化するためにWorksheet_change event、単純なMACROではなく推奨したいと思います。

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" And Target.value = 1 Then
        Range("C1").value = "Okay"
     ElseIf Target.Address = "$A$1" And Target.value <> 1 Then
     Range("C1").value = "Nope"
    End If
End Sub 

使い方:

  • このコードをコピーして標準モジュールとして貼り付けます。
  • すぐに、細胞を移植A1して1マクロ入れますOkayセルにC1セルがあれば、 A1空白であるかということ、他の任意の値を持ち1 、その後、その後、マクロが置かれますNopeセル内をC1

注意:

  • 必要に応じてコード内のセル参照を調整します。他の値Nopeと置き換えることもできますBlank
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.