> 컴퓨터 튜토리얼 > 컴퓨터 지식 > VBA를 사용하여 모든 워크시트 병합

VBA를 사용하여 모든 워크시트 병합

王林
풀어 주다: 2024-01-16 21:12:05
앞으로
1123명이 탐색했습니다.

VBA를 사용하여 모든 워크시트 병합

vba합작부시트

Sub ADO联합查询()

Dim cnn As Object, SQL$, MyPath$, MyFile$, m&, n&

Set cnn = CreateObject("ADODB.Connection")

[a:b].내용 지우기

MyPath = ThisWorkbook.Path & ""

MyFile = Dir(MyPath & "*.xls")

MyFile 동안 ""

MyFile이 ThisWorkbook.Name이면

n = n + 1

n = 1이면 cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Extended;Data Source=" & MyPath & MyFile

m = m + 1

m >49라면

Range("a" & Rows.Count).End(xlUp).Offset(1).CopyFromRecordset cnn.Execute(SQL)

m = 1

SQL = ""

끝나면

If Len(SQL) Then SQL = SQL & "union all"

SQL = SQL & "f1 선택,'" & [Excel 8.0;hdr=no;Database=" & MyPath & MyFile & "]에서 (MyFile, ".xls", "") & ""를 교체합니다.[Sheet1$ A2:A]"

끝나면

MyFile = 디렉터리()

루프

If Len(SQL) Then Range("a" & Rows.Count).End(xlUp).Offset(1).CopyFromRecordset cnn.Execute(SQL)

cnn.닫기

cnn 설정 = 없음

끝 서브

사용vba插入合并填充单元格

비공개 하위 CommandButton1_Click()

'最后一行r,上face插入一行,横向合并单元格n格,填充数据s

Dim n, s, col, r, tmp

'----결정----

n = 2 '横向합并单원格n格

s = "XXXXXX" '填充数据s

col = "A" '以col列为操작성最左列

'----执行----

ActiveSheet 사용

r = .Cells(65536, col).End(xlUp).Row

.Rows(r).Insert xlShiftDown '插入行

.Cells(r, col).Resize(1, n)

.'합당합원格

' 병합

.값 = s '填充数据

끝 서브

위 내용은 VBA를 사용하여 모든 워크시트 병합의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:docexcel.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿