여러 셀을 한 위치에 복사

여러 셀을 한 위치에 복사

저는 엑셀로 데이터를 많이 옮기는데요. 많은 무작위 셀을 다른 위치에 복사하여 나란히 놓을 수 있기를 원합니다.

예를 들어 a3,d21,aa32,cd121 등을 복사하고 싶습니다. a3->a1000,d21->b1000,aa32->c1000 등이 됩니다.

하나씩 복사하고 무작위 셀 각각을 찾는 데 오랜 시간이 걸리며 앞뒤로 이동하는 것 외에 이를 수행할 수 있는 쉬운 방법이 있습니까?

제가 바라는 답변은 다음과 같습니다. 이 셀(a3,d21 등)을 찾아 한 번에 하나씩 선택하여 모두 순서대로 선택되도록 합니다. 그런 다음 "일부 명령"을 수행하고 a1000을 클릭하면 모두 나란히 복사됩니다.

Excel에서 이러한 종류의 작업을 수행할 수 없는 경우 복사 중인 "임의" 셀이 동일한 행에 있고 고정된 거리로 분리되어 있으면 어떻게 될까요? 예: (3개 간격) a6,d6,g6,j6,m6 등. -> a10,b10,c10 등.

2 부.)

나란히 복사하는 대신 양의 정수 k에 대해 k 열이 떨어져 있도록 복사하고 싶다면 어떻게 될까요?

예: (k=4) a3,d21,aa32,cd121 등. -> a1000,e1000,i1000,m1000,q1000 등.

또는 이것이 가능하지 않다면 j에서 k만큼 떨어져 있는 같은 행의 셀은 어떻습니까?

예(j=3,k=4) a6,d6,g6,j6,m6 등. -> a10,e10,i10,m10,q10 등.

답변1

VBA는 당신의 친구입니다. 어떤 이유로 VBA가 옵션이 아닌 경우 화면을 분할하여 상단의 소스 셀과 하단의 대상 셀을 볼 수 있습니다(또는 그 반대로).

세로로 분할(가로선 기준):
세로로 분할(가로선으로)

반대:
반대

4개의 별도 화면으로 구성된 최종 결과:
4개의 별도 화면으로 구성된 최종 결과

답변2

VBA를 사용해 본 적이 없다면 샘플 코드를 제공하겠습니다. 귀하의 질문에는 많은 옵션이 있으므로 코드를 분석한 후 귀하의 필요에 맞게 조정할 수 있을 것이라고 확신합니다. 저도 여러분의 학습에 도움이 되도록 댓글을 달았습니다.

먼저 새 모듈(끼워 넣다>기준 치수)

그런 다음 코드를 안에 넣으세요.

Option Explicit   ' no matter what, this is a must have line in every case

Sub test()

    ' declaring variables
    Dim rngSource As Range
    Dim rngTarget As Range
    Dim i As Long
    Const k As Long = 4 ' this is the k from your example
    Dim cell As Range

    ' choosing source cells
    Set rngSource = Application.InputBox(prompt:="Choose cells, use Ctrl", Type:=8)
    ' choosing destination cell
    Set rngTarget = Application.InputBox(prompt:="Select the 1st target cell", Type:=8)

    ' iterating through every cell in Source selection
    i = 0
    For Each cell In rngSource
        ' writing value
        rngTarget.Offset(0, i).Value = cell.Value
        i = i + k
    Next

End Sub

어떤 이유로 여기서는 색상을 볼 수 없습니다. 하지만 VBE에서는 볼 수 있습니다.

행운을 빌어요!

관련 정보