私はこれをExcelまたはOpen Officeで条件付きで行う方法があるかどうか知りたいです:
if the cell is empty then
the cell will have the same value as the cell above it
else
do nothing.
これにはマクロを使用する必要がありますか?私を助けてください; Excelの使用経験はほとんどありません。
c 1 | 2011/10/21
c 2 |
c 3 |
c 4 | 2011年10月24日
c 5 |
c 6 |
c 7 | 2011年10月25日
c 8 |
c 9 |
c10 | 2011年10月26日
塗りつぶす必要のある空白のセルを含む範囲を選択します。
[ホーム]> [検索と選択]> [特殊文字に移動…]をクリックすると、[特殊文字に移動]ダイアログボックスが表示され、[空白]オプションをオンにします。
[OK]をクリックすると、空白のセルがすべて選択されています。次に、選択範囲を変更せずに、数式「= B2」をアクティブセルB3に入力します。このセル参照は、必要に応じて変更できます。
Ctrl + Enterキーを押すと、Excelはそれぞれの数式をすべての空白セルにコピーします。
この時点で、入力された内容は数式であり、フォーマルを値に変換する必要があります。次に、範囲全体を選択し、右クリックして[コピー]を選択し、Ctrl + Alt + Vを押して[形式を選択して貼り付け...]ダイアログボックスをアクティブにします。貼り付けから値オプションを選択し、操作からなしオプションを選択します。
次にOKをクリックします。そして、すべての数式が値に変換されています。
Excelの場合:
誰かがセルをマージしたテーブルがある場合、またはHTMLサイトからテーブルをコピーしている場合、実際には同じ値を持つ空の行など、コピーされたデータに多くの不整合がある可能性があります。前の行でこれを修正する簡単な方法は、空の列に移動して次の数式を作成することです。
これは、A1にヘッダーがあり、A2に最初のデータと有効な行の値が含まれていることを前提としています。
他のすべてのセルのみが空の場合、次のことができます。= if(A2="",A1,A2)
上記の関数は、A2が空白かどうかをチェックし、空白の場合はA1の値を割り当て、空白でない場合はA2の値を割り当てます。
ただし、入力する必要がある空の行が複数ある場合は、次のことを行うことをお勧めします。
(後続のすべての空のセルに複製する値を持つセルがA2で始まると仮定します。次の列の最初の2つのセルを手動で設定してもかまいません。列I:Iはテーブルの最初の空の列です)
ステップ1:セルI2およびI3で、関連する行に適切な値が存在することを確認します。
ステップ2:セルI4に次の数式を入力します。= if(A4="",if(A3<>"",A3,I3),A4)
上記の関数は、A4が空白かどうかをチェックし、ISの場合は、A3が空白でないかどうかをチェックします。実際にそうでない場合は、A3の値を割り当て、それも空白の場合は、 I3、最後に、A4が空白でない場合は、A4の値を割り当てます。
数式を手動で下にドラッグする必要があります(空の行があるため)。
不要なデータに続く空の行は、キーフィールドで列を並べ替えることで簡単に識別できます。
上記のロバートが示したように、数式の値を扱っているので、値を移動してソースセルを上書きすることはできませんが、「特別な」貼り付けを行うと、値をソースセルに直接貼り付けることができます。
これは私がかつて書いたものです:
Sub FillInBlankCellsInColumns()
'Go down and when you find an empty cell, put the value from the previous cell in there.
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
Dim MyCounter As Long
MyCounter = 0
For Each r In Selection
On Error Resume Next
If r.Value = "" Then
r.Value = r.Offset(-1, 0).Value
End If
Next
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub
Debra Dalgleishは、
彼女のサイトの Excelデータ入力-Excel列の空白セルを入力
vlookupを使用する
=+VLOOKUP("Output",D1:G7,1)
Apple 1 Apple 2 Apple 7 Apple Mango 3 Mango ====== =============== col1 Col2 Formula
または、新しい列で次の数式を使用することもできます。
D2:=IF(ISBLANK(C2),D1,C2)
これはもう少し「作業」ですが、Excelの経験がないと述べているので、マクロの作成は困難な場合があります。
よろしく、
ロバート・イルブリンク