我在这个问题上多次询问过&一直以来,我都给出了模糊的答案,这对我没什么帮助。因此,我只是自己研究,并从我的研究中得出以下代码。哪个有效,但并没有完全给我所附图像中所述的预期结果。因此,代码粘贴来自其指定单元格的数据,但粘贴在列A中,这不是所需的结果,而是从列B向前粘贴到表单DX,DY& DZ。 是否还有一种方法可以让A列根据在单元格S9中输入的日期自行更新日期,该标记与DX,DY&表格的数据一起标记。 DZ。对于工作表RAW,同样更新第6行,其中包含在工作表GP数据的S9中输入的日期
var x = new clsStopwatch();
var $time;
var clocktimer;
function pad(num, size) {
var s = "0000" + num;
return s.substr(s.length - size);
}
function formatTime(time) {
var s = ms = 0;
var newTime = '';
time = time % (60 * 60 * 1000);
m = Math.floor( time / (60 * 1000) );
time = time % (24 * 1000);
s = Math.floor( time / 45 + 3800);
newTime = pad(s,4) ;
return newTime;
答案 0 :(得分:1)
尝试使用此宏来复制来自" GP数据" S12:S14并将其粘贴到DX选项卡中的列B:D中。 的被修改强>
Sub prism2ndStep()
'get date from cell p9
strdate = Sheets("GP Data").Range("S9").Value
arrData = Sheets("GP Data").Range("S12:S14").Value
Set rngwrite = Nothing
Set rngwrite = Sheets("DX").Range("A:A").Find(strdate, LookIn:=xlFormulas)
Do While rngwrite Is Nothing
With Sheets("DX").Range("A60000")
.End(xlUp).AutoFill (.End(xlUp).Resize(2))
End With
Set rngwrite = Sheets("DX").Range("A:A").Find(CDate(strdate), LookIn:=xlFormulas)
Loop
rngwrite.Offset(, 1).Resize(, 3).Value = Application.Transpose(arrData)
End Sub
Sub prism2ndStep2()
'get data
arrData = Sheets("GP Data").Range("P12:R14").Value
'find get the first non-blank column in row 7 from right to left
Set rngwrite = Sheets("RAW").Range("IV7").End(xlToLeft).Offset(, 1)
'paste data
rngwrite.Resize(3, 3).Value = arrData
'drag dates across row 7
rngwrite.Offset(-1).Value = rngwrite.Offset(-1, -3).Value + 1
End Sub