私はこのコードを、私が一緒につなぎ合わせたVBAのコードではあまりよくないコードを使って作成しました。別のワークブックの最後の行に複数のセルを送信
私はそれは例えば、あらゆる場所にあるデータを含む、鉱山で1つのワークブックを持っている:名前はL2で、口座番号は、C3などなどです
をこのコードは、このデータのすべてを送信することです私の同僚の残りの人が使っている別のワークブック、そしてそのワークブックの最後の行に移動します。
Sub Save_To_Register()
Dim count As Integer
Dim r1 As Range, r2 As Range,
'Officer Name
Set r1 = Range("L2")
Set r2 = Sheets("Sheet1").Range("A100")
r2.Value = r1.Value
'Account Number
Set r1 = Range("C3")
Set r2 = Sheets("Sheet1").Range("C100")
r2.Value = r1.Value
'Account Address
Set r1 = Range("C4")
Set r2 = Sheets("Sheet1").Range("D100")
r2.Value = r1.Value
'Applicant of Take Over
Set r1 = Range("L3")
Set r2 = Sheets("Sheet1").Range("E100")
r2.Value = r1.Value
'Applicant of Take Over
Set r1 = Range("C3")
Set r2 = Sheets("Sheet1").Range("C100")
r2.Value = r1.Value
Application.Workbooks("PM-#8873088-v4-SUB-METERING_REGISTER.XLS").Activate
Application.Wait (Now + TimeValue("0:00:1"))
ThisWorkbook.Sheets("Sheet1").Range("A100:K100").Copy
ActiveSheet.Select
ActiveSheet.Range("A1").Select
count = 1
Do While Not (ActiveCell.Value = None)
ActiveCell.Offset(1, 0).Range("A1:K1").Select
count = count + 1
Loop
ActiveSheet.Range("A" & count).PasteSpecial
End Sub
これは、私は基本的に単列A100に細胞L2、C3、C4 & L3をミラーだ、非常に効率的なコードではない:K100。その行には= Today()の数式が含まれています。
すべてがうまくいきましたが、効率的ではありませんでした。このVBAを使用すると、すべてのデータが完全ににコピーされますが、前のエントリのすべての日付が更新されます。
私はpastespecialを使うと値だけを転送すると思っていましたが、実際の値ではなく、新しいブック(Sub metering register)にコピーされたすべての日付セルが= Today() 。
日付の値が数式としてではなく値としてコピーされるようにする方法や、新しいブックの毎日更新されないように値を停止する方法についての提案はありますか?
はあなたpastespecial後、あなたが