سؤال

في أوبن احسب

وأنا بحاجة إلى نسخ عمود (فقط على القيم ، أو ليس الشكل) من ورقة واحدة إلى أخرى (في نفس ورقة العمل) باستخدام الماكرو المعين إلى زر.

وأنا تصفحها قليلا حول ولكن وجدت شيئا هاما: - (

هل كانت مفيدة؟

المحلول

للرد على السؤال الأصلي:

واستخدام مجموعة البيانات، والتي ستكون significally أسرع على نطاقات واسعة من الخلايا

Source = ThisWeek.getCellRangeByName("H12:H206")
source_data = Source.getDataArray()

Target = Steering.getCellRangeByName("M12:AU206").setDataArray(source_data())

نصائح أخرى

وOK، I يمكن بناء الجواب وبدأت تعلم أوبن الأساسية، التي تمكنت من تجنب حتى الآن. -)

وأعطي كما هي.

Sub UpdateThisWeek

Dim Doc As Object
Dim ThisWeek As Object
Dim Steering As Object
Dim Source As Object
Dim Target As Object
Dim Week as Integer

Doc = ThisComponent
ThisWeek = Doc.Sheets.getByName("This week")
Steering = Doc.Sheets.getByName("Steering")
Week = Steering.getCellByPosition(6,4).Value
Source = ThisWeek.getCellRangeByName("H12:H206")
Target = Steering.getCellRangeByName("M12:AU206").getCellRangeByPosition(Week-19,0,Week-19,194)

Dim i, s
For i = 0 To 194
    s = Source.getCellByPosition(0, i).Value
    If s > 0 Then
        Target.getCellByPosition(0, i).Value = s
    Else
        Target.getCellByPosition(0, i).String = ""
    End If
Next i

End Sub
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top