Board logo

標題: 請修改程式 [打印本頁]

作者: myleoyes    時間: 2012-11-16 07:11     標題: 請修改程式

各位前輩你們好!
       Sub Ex()
      With Sheets("學習")
      .[A65536].End(xlUp)(1, 1).Copy .[A65536].End(xlUp)(2, 1)
      .[A65536].End(xlUp)(1, 1).Offset(-1, 0) = [A65536].End(xlUp)(1, 1)
      .[B65536].End(xlUp)(1, 1).Copy .[B65536].End(xlUp)(2, 1)
      .[B65536].End(xlUp)(1, 1).Offset(-1, 0) = [B65536].End(xlUp)(1, 1)
      .[C65536].End(xlUp)(1, 1).Copy .[C65536].End(xlUp)(2, 1)
      .[C65536].End(xlUp)(1, 1).Offset(-1, 0) = [C65536].End(xlUp)(1, 1)
           '...等等
    End With
End Sub
       問題如附檔說明
       請知道的前輩,不吝賜教謝謝再三!!
作者: stillfish00    時間: 2012-11-16 09:38

回復 1# myleoyes
  1. Sub Ex()
  2.     With Sheets("學習").[A65535].End(xlUp).Resize(1, 15)
  3.         .Copy
  4.         .Offset(1).PasteSpecial Paste:=xlPasteFormulas
  5.         .Offset(1).PasteSpecial Paste:=xlPasteFormats
  6.         .PasteSpecial Paste:=xlPasteValues
  7.     End With
  8. End Sub
複製代碼

作者: GBKEE    時間: 2012-11-16 16:19

回復 1# myleoyes
AutoFill 方法  特定對指定範圍中的儲存格進行自動填滿。為 Variant。
  1. Option Explicit
  2. Sub Ex()
  3.     With Sheets("學習").[A65535].End(xlUp).Resize(1, 15)
  4.         .AutoFill Destination:=.Resize(2), Type:=xlFillDefault
  5.         .Value = .Value
  6.     End With
  7. End Sub
複製代碼

作者: myleoyes    時間: 2012-11-16 21:58

回復 3# GBKEE
stillfish00  前輩!程式OK!謝謝再三!!
良師!謝謝!!果然技高一籌
          再請教2個問題
                  問題一
          當A1顯示 支出123
          按鈕 B1=123(值)
          如果A1顯示 支出456789
          按鈕 B1=456789(值)
          也就是說B1只取A1的數字部份
                   問題二
            ZZ = Application.InputBox("請選取# 支出=(H欄) #", "支出費用", "=INT(/2)", Type:=0)
    If [E1] = "" Then
    [E1] = ZZ
    Else
    If ZZ <> False Then [E1] = ZZ & "+" & Mid([E1].FormulaR1C1, 2)
    If ZZ = "" Or ZZ = False Then Exit Sub
    End If
    [E1]=INT(Sheet4!$H$3/2)+INT(Sheet1!$H$3/2)
    [E1]的型態是所需
    但如果將對話框預設"=INT(/2)"去掉改成
    ZZ = Application.InputBox("請選取# 支出=(H欄) #", "支出費用", Type:=0)
    執行程式[E1]的型態也是[E1]=INT(Sheet4!$H$3/2)+INT(Sheet1!$H$3/2)
    小弟這樣子改不行耶!
    ZZ = Application.InputBox("請選取# 支出=(H欄) #", "支出費用", Type:=0)
    If [E1] = "" Then
    [E1] = "=" & "int" & "(" & ZZ & "/2)"
    Else
    If ZZ <> False Then [E1] = "=" & "int" & "(" & ZZ & "/2)" & "+" & Mid([E1].FormulaR1C1, 2)
    If ZZ = "" Or ZZ = False Then Cancel = True
    End If
    請問要如何修改才能完成
    以上2個問題,請知道的前輩,不吝賜教謝謝再三!!
作者: stillfish00    時間: 2012-11-17 07:54

回復 4# myleoyes
1.   
    mid取出數字部分再轉數字型態
    =--Mid(A1,3,Len(A1)-2)
2.
    你寫的  If ZZ <> False Then [E1] = "=" & "int" & "(" & ZZ & "/2)" & "+" & Mid([E1].FormulaR1C1, 2)
    式中的ZZ含有等號 , 改 Right(ZZ , Len(ZZ)-1) 看看
作者: myleoyes    時間: 2012-11-17 21:53

回復 5# stillfish00
前輩!程式OK!謝謝再三!!辛苦囉!




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)