|
こんにちは
例えば今日データ蓄積用のシートの「H55:H99」までデータを入力したとすると、
明日は「H100〜」に入力するのですか?
データ蓄積用のシートをアクティブにして下記コードを実行して下さい。
追加されたシートのA、B列に計算式が表示されると思いますので、その部分をコピー
してここに貼り付けて提示して下さい。
Sub test()
Dim hs As Worksheet
Dim r As Range
Dim s As Range
Dim aShName As String
Dim v() As String
Dim i As Long
Dim j As Long
aShName = ActiveSheet.Name '蓄積用シートをアクティブにして実行する事
i = 1
On Error Resume Next
For Each hs In Worksheets
If hs.Name <> aShName Then
Set r = hs.Cells.SpecialCells(xlCellTypeFormulas)
If Not r Is Nothing Then
For Each s In r
If InStr(s.Formula, aShName) > 0 Then
ReDim Preserve v(1 To 1, 1 To i + 1)
v(1, i) = hs.Name & "!" & s.Address
v(1, i + 1) = "'" & s.Formula
i = i + 2
End If
Next s
End If
Set r = Nothing
End If
Next
On Error GoTo 0
If i > 1 Then
Application.ScreenUpdating = False
Set hs = Worksheets.Add
j = 1
hs.Cells(j, "A").Value = "計算式セットセル"
hs.Cells(j, "B").Value = "計算式"
For i = 1 To UBound(v, 2) Step 2
j = j + 1
hs.Cells(j, "A").Value = v(1, i)
hs.Cells(j, "B").Value = v(1, i + 1)
Next i
hs.Columns("A:B").AutoFit
Set hs = Nothing
Application.ScreenUpdating = True
End If
Erase v
End Sub
|
|