2017-04-14 3 views
-1

질문.첫 번째 시트에 복사 붙여 넣기 행을 복사하는 동안 VBA를 복사하여 추가하십시오.

첫 번째 시트에 복사 된 행을 삽입 할 때 전체 워크 시트를 복사하려면 VBA 코드가 필요합니다. 예 : 시트 하나; 행 A1 : N1은 수식을 가지고 있으며 시트 2와 결합됩니다.

이제 A1 : N1에서 A2 : N2 행을 복사하여 시트 2를 복사 한 후 삽입해야합니다. .. 등

및 ..

는 심지어 수를 시트 (1)로부터 N2 ?? : 행 A2와 함께 모든 화학식 엉

WP sample 1 "WP 샘플 1"의 WPS samples 2

;

행 A14은 "WPS 1"linkt가 "워크 시트 WPS1"(WPS 샘플 2) 행 A15은 "WPS 2"linkt은 "워크 시트 WPS2"-I "는 WPS 3"을 만들

에, 그래서 나는이이 VBA가

은 그래서 WPS3을 만듭니다 "워크 시트"WPS1 "및 광고 워크 시트 후이 복사본"WPS2 "를 복사 할 필요가 15

에서이 정보를 14을 행 복사 및 붙여 넣기 위하여려고하고있다 'WPS1'과 동일한 수식이 있어야합니다.

thnx 광고 좋아.

미치

+0

귀하의 질문은 나에게 매우 불만입니다. 전후에 샘플 데이터 또는 사진을 제공 할 수 있습니까? 워크 시트 개체의 복사본을 만드시겠습니까? 그냥 수식을 바꾸시겠습니까? –

+0

안녕 Branislav, 나는 약간의 담당자와 정보를 추가했다, 당신이 이것으로 나를 도울 수 있기를 바란다. 여전히 더 많은 정보가 필요한 경우. 문의하시기 바랍니다. grtz 미치 – mitchel

답변

0

당신은 유사한 절차를 시도 할 수는 :

Public Sub copyWPS1asNew() 
    Dim NameInput As String 
RequestName: 
    NameInput = Application.InputBox(Prompt:="Type new name of the WPS.", Title:="WPS Name", Default:="WPS2", Type:=2) 'type:=2 is String 

    'check if the name is taken 
    Dim Ws As Worksheet 
    For Each Ws In Worksheets 
     If Ws.Name = NameInput Then 
      MsgBox "That name is already taken. Try a different one.", vbExclamation, "Try different name" 
      GoTo RequestName 
     End If 
    Next 

    'create new sheet 
    Dim NewWs As Worksheet 
    Worksheets("WPS1").Copy After:=Worksheets(Worksheets.Count) 
    Set NewWs = Worksheets(Worksheets.Count) 
    NewWs.Name = NameInput 
End Sub 

일부 사용자 정의 tweeks은 어쩌면 필요하다. 희망이 당신을 시작 가져옵니다.
코드를 더 재사용 할 수 있도록 이름이 포함되어 있는지 확인하는 사용자 지정 함수를 만들 수 있습니다.

+0

이 코드를 가져 주셔서 감사합니다 Branislav! – mitchel

+0

내가 놓칠 수있는 유일한 방법은 수식 숭배입니다. 복사 한 워크 시트에는 내가 복사 한 행렬에 대한 수식 경비가 있습니다. 모든 수식을 내가 복사 한 행으로 변경할 수있는 방법이 있습니까 ?? – mitchel

+0

@ 미쉘 가능 가능합니다. 여러 가지 솔루션이 떠오른다. 숨겨진 시트를 여러 개 만들어 필요할 때 다시 숨길 수 있습니다. 마지막 행을 기준으로 시트를 자동으로 작성하기 위해 워크 시트 변경 이벤트를 작성할 수 있습니다. 여러 개의 단추를 추가 할 수 있으며 각 단추와 시트는 행에 따라 만듭니다. WP 시트에서 WS 이름을 검색하고 간접 참조로 그들의 이름을 사용하는 UDF를 만들 수 있습니다 ... –

관련 문제