ªð¦^¦Cªí ¤W¤@¥DÃD µo©«

[µo°Ý] ½Ð°ÝVBA¥i¥H°µ¨ì¨âÀɮפñ¹ï«á¦A²£¥Í¥t¤@Àɮתº¤ñ¹ïµ²ªG¶Ü?

¥»©«³Ì«á¥Ñ stillfish00 ©ó 2013-8-15 17:49 ½s¿è

¦^´_ 46# happycoccolin
­Y¦³ªºÀɮ׬OB5Äæ¶}©l¦³ªº¬OB6Äæ¶}©l ¥i¥H«ç»ò§PÂ_?

¤£ª¾¹D¡A
¦Ó¥B§AªºA_0814.xlsxÀÉ®×®¼©Çªº¡I
[A4]Àx¦s®æ©ú©ú¨S¤å¦r(¤]¨S¦³¤£¥i¨£¦r¤¸)¡A«o¤S¤£¬OªÅ¥ÕÀx¦s®æ(´M§ä>¯S®í¥Ø¼Ð>ªÅ¥Õ¡A¤£·|§ä¨ì)
¥ÎCtrl+¤W¤U¤]³£·|¸õ¹L¡C

²Ä¤@¦¸¹J¨ì³oºØ±¡§Î~

­Y¬O·sªí®æ©Ò¦³Äæ¦ì³£­n¦³TITLE ¥i¥H³£¶ñ¤W¶Ü~

§ï¤@¤U
  1.   arNewHeader = Array("Q", "W", "E", "R", "T", "Y", "U", "I") '¦Û¤v¶ñ¤W¥þ³¡·s¼ÐÃD¦WºÙ
½Æ»s¥N½X
ÁÙ¦³³oÃä
  1.     With .Sheets(1)
  2.       For i = LBound(cIndexOld) To UBound(cIndexOld)
  3.         .Cells(1, cIndexNew(i)).Resize(r).Value = Application.WorksheetFunction.Index(ar, 0, cIndexOld(i))
  4.       Next
  5.       .[A1].Resize(, UBound(arNewHeader) + 1).Value = arNewHeader
  6.     End With
½Æ»s¥N½X

TOP

¦^´_ 49# happycoccolin
  1. Sub TEST()
  2.   Dim ar, r As Long, i As Long
  3.   Dim cIndexOld, cIndexNew, arNewHeader
  4.   Dim f, findTitle
  5.   
  6.   cIndexOld = Array(2, 3, 4, 5, 7, 8)   'AÀɮפ¤­n·h°ÊªºÄæ
  7.   cIndexNew = Array(2, 4, 21, 24, 43, 44)   '·h¨ìBÀɦì¸m
  8.   arNewHeader = Array("Q", "W", "E", "R", "T", "Y", "U", "I") '¦Û¤v¶ñ¥þ³¡BÀɼÐÃD¦WºÙ
  9.   
  10.   f = Application.GetOpenFilename(FileFilter:="Excel ¬¡­¶Ã¯ (*.xlsx),*.xlsx", Title:="¿ï¾Ü¨Ó·½ÀÉ®×")
  11.   If Not TypeName(f) = "String" Then Exit Sub '¨ú®ø«hµ²§ô
  12.   
  13.   Application.ScreenUpdating = False
  14.   With Workbooks.Open(f)
  15.     With .Sheets(1)
  16.       Set findTitle = .Cells.Find("Item", , xlValues, xlWhole, xlByRows, xlNext)  '§ä¼ÐÃD Item
  17.       If findTitle Is Nothing Then MsgBox "§ä¤£¨ì¼ÐÃD": Exit Sub
  18.       
  19.       With findTitle.CurrentRegion
  20.         ar = .Parent.Range(findTitle, .Cells(.Rows.Count, .Columns.Count)).Value
  21.       End With
  22.     End With
  23.     .Close False
  24.   End With
  25.   Application.ScreenUpdating = True
  26.   
  27.   r = UBound(ar)
  28.   With Workbooks.Add
  29.     With .Sheets(1)
  30.       For i = LBound(cIndexOld) To UBound(cIndexOld)
  31.         .Cells(1, cIndexNew(i)).Resize(r).Value = Application.WorksheetFunction.Index(ar, 0, cIndexOld(i))
  32.       Next
  33.       .[A1].Resize(, UBound(arNewHeader) + 1).Value = arNewHeader
  34.     End With
  35.    
  36.     If MsgBox("¬O§_­nÀx¦sÀÉ®×?", vbYesNo) = vbYes Then
  37.       f = Application.GetSaveAsFilename(FileFilter:="Excel ¬¡­¶Ã¯ (*.xlsx),*.xlsx", Title:="¥t¦s¬°·sÀÉ")
  38.       If Not TypeName(f) = "String" Then Exit Sub '¨ú®ø«hµ²§ô
  39.       .SaveAs f, FileFormat:=xlWorkbookDefault
  40.     End If
  41.   End With
  42. End Sub
½Æ»s¥N½X

TOP

¦^´_ 52# happycoccolin
­nµ¹Àx¦s®æ½d³ò¡A¦p
With Workbooks.Add
       With .Sheets(1)
          .[A1:H1].Font.Name = "Tahoma"  '¦rÅé¦WºÙ
          .[A1:H1].Font.Size = 10 '¦rÅé¤j¤p
       End With
End With

TOP

¦^´_ 54# happycoccolin
.Cells ´N¥Nªí¤u§@ªí¤¤ªº©Ò¦³Àx¦s®æ¤F
  1. With Workbooks.Add
  2.        With .Sheets(1).Cells
  3.           .Font.Name = "Tahoma"  '¦rÅé¦WºÙ
  4.           .Font.Size = 10 '¦rÅé¤j¤p
  5.        End With
  6. End With
½Æ»s¥N½X

TOP

        ÀR«ä¦Û¦b : ¯à·F¤£·F¡A¤£¦p­W·F¹ê·F¡C
ªð¦^¦Cªí ¤W¤@¥DÃD