選択範囲のセルを任意の文字で埋める
左上から、右下まで選択して、実行すると
こんな風に埋めてくれるようなVBA。
Sub test() ' この場合、セルが空白なら0で埋める処理になる Call fillXtoY("", 0) End Sub Sub fillXtoY(x, y) For i = Selection(1).Row To Selection(Selection.Count).Row For j = Selection(1).Column To Selection(Selection.Count).Column If Cells(i, j) = x Then Cells(i, j) = y End If Next Next End Sub
https://gist.github.com/pogin503/5150808
VBAだとサブルーチンはCallで呼ぶといいみたい。
追記 2017/03/22
もっと簡単な書き方があるっぽい。
Sub test() ' この場合、セルが空白なら0で埋める Call fillXtoY("", 0) End Sub Sub fillXtoY(x, y) Dim i As Long, j As Long With Selection For i = 1 To .Rows.Count For j = 1 To .Columns.Count If .Cells(i, j) = x Then .Cells(i, j) = y End If Next Next End With End Sub