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

[µo°Ý] °ÊºA­×¥¿¶×¤J¹Ïªíªº³Ì«á¸ê®Æ¦C¤§¦C¼Æ©Ò©µ¦ùªº°ÝÃD

[µo°Ý] °ÊºA­×¥¿¶×¤J¹Ïªíªº³Ì«á¸ê®Æ¦C¤§¦C¼Æ©Ò©µ¦ùªº°ÝÃD

§Ú¦³¤@¨ÇºÃ´b·Q½Ð¦U¦ì¤j¤j«ü¾É¡Aµ{¦¡½X¦p¤U¡G (¸Ì­±¤À§O³B²z¤F6­Ó²Î­p¹Ïªí)
  1. Sub getEndRows()  ' ¥H Excel -> ´¡¤J -> §é½u¹Ï¡Bª½±ø¹Ï ¤è¦¡¤@¤@´¡¤J©ó¤u§@ªí³æ¤ºªºÀˬd¤è¦¡¡C
  2.     Dim oShape As Shape
  3.     Dim numChart As Integer
  4.     Dim totalRows As Single
  5.    
  6.     numChart = 0
  7.    
  8.     Sheets("²Î­p¹Ïªí").Select
  9.     totalRows = Range("B" & Rows.Count).End(xlUp).Row     ' ¶Ç¦^ B Äæ©Ò¨Ï¥ÎÀx¦s®æ¤§³Ì«á¤@®æ¤§¦C¸¹ (¹ê»Ú¶×¤J¸ê®Æ¤§Á`¦C¼Æ)
  10.             
  11.     For Each oShape In ActiveSheet.Shapes
  12.         If oShape.Type = 3 Then
  13.             numChart = numChart + 1
  14.             
  15.             Cells(lines, 36).Value = "²Ä " & lines - 1 & " ­Ó¹Ïªí"           
  16.             Cells(lines, 37).Value = oShape.Name

  17.             ' Shapes(oShape.Name).Select     ' ¥²¶·¥ý¦æ«Å§i oShape.Name ¿ï¾Ü¡A§_«h¥H¤U®y¼Ð¦ì¸m¡B°ª«×¡B¥H¤Î¼e«×¤§­«·s³]©w±N¤©¥H©¿²¤¦ÓµL¹ê½è§@¥Î
  18.             ActiveSheet.ChartObjects(oShape.Name).Activate                     
  19.             Cells(lines, 38).Value = ActiveSheet.ChartObjects(oShape.Name).Name   ' µ²ªG¬Oµ¥©ó oShape.Name
  20.                
  21.             Select Case numChart
  22.                 Case 1
  23.                     ActiveChart.SetSourceData Source:=Range("$B$1:$B$" & totalRows & ", $F$1:$F$" & totalRows & ", $I$1:$J$" & totalRows)  
  24.                 Case 2
  25.                     ActiveChart.SetSourceData Source:=Range("$B$1:$B$" & totalRows & ", $AA$1:$AA$" & totalRows)
  26.                 Case 3
  27.                     ActiveChart.SetSourceData Source:=Range("$B$1:$B$" & totalRows & ", $AC$1:$AC$" & totalRows)
  28.                 Case 4
  29.                     ActiveChart.SetSourceData Source:=Range("$B$1:$B$" & totalRows & ", $AE$1:$AE$" & totalRows)
  30.                 Case 5
  31.                     ActiveChart.SetSourceData Source:=Range("$B$1:$B$" & totalRows & ", $AG$1:$AG$" & totalRows)
  32.                 Case Else
  33.                     ActiveChart.SetSourceData Source:=Range("$B$1:$B$" & totalRows & ", $F$1:$F$" & totalRows & ", $V$1:$V$" & totalRows)   ' ¹Ï¥Ü·|¤À§OÅã¥Ü¥X ¦¨¥æ»ù

  34.                     ' ´ú¸ÕOK«á¡A¤§«á¤S¼W¥[¤F¥H¤U¥|¦æµ{¦¡½X
  35.                     ActiveChart.Axes(xlCategory).TickLabels.NumberFormatLocal = "hh:mm"
  36.                     ActiveChart.Axes(xlCategory).MajorTickMark = xlNone
  37.                     ' ±N®É¶¡¶b±q 0 ¨è«×½u¤U¤è(¹Ïªí¹w³]­È)²¾¦Ü¨ì¹Ïªí¤§³Ì¤U¤è¦ì¸m (­ì¥»¹w³]©ó­t­È¼Æ­È¦C³B¡A¾B»\¤F­t­È¦±½u¤§À˵ø¡F¬G±N¤§²¾¦ì¡A±N¨Ï±oªí®æ©ö©ó¾\Äý)
  38.                    ActiveChart.Axes(xlCategory).TickLabelPosition = xlLow     

  39.                    Cells(lines, 38).Value = ActiveChart.ChartTitle.Text  
  40.             End Select
  41.         End If
  42.     Next
  43. End Sub
½Æ»s¥N½X
1.     §Ú­ì¥»¬O¨Ï¥Î   Shapes(oShape.Name).Select  ¡A¦ý¦b¸Ó²Î­p¹Ïªí¤u§@ªí³æ¤º°õ¦æ®É¬OOK¡A¦ý±N¥¦·h¨ì ThisWorkbook ¤º´N¦³¿ù»~°T®§¡A©ó¬O«K§â¥¦­×§ï¦¨
         ActiveSheet.ChartObjects(oShape.Name).Activate «K¯à¶¶§Q°õ¦æ¡A¨ä­ì¦]¬°¦ó¡H ¥¿½TÀ³¦p¦óÀ³¥Î¡H
2.      ´ú¸ÕOK«á¡A¤§«á§Ú¤S¼W¥[¤F¥|¦æµ{¦¡½X¡Aµ²ªGÅã¥Ü Axes¡BTickLabels¡BctiveChart.ChartTitle.Text µ¥»yªk¤W¤£¥¿½T¡A
                    ActiveChart.Axes(xlCategory).TickLabels.NumberFormatLocal = "hh:mm"
                    ActiveChart.Axes(xlCategory).MajorTickMark = xlNone
                   ActiveChart.Axes(xlCategory).TickLabelPosition = xlLow     
                   Cells(lines, 38).Value = ActiveChart.ChartTitle.Text  
        ½Ð±ÐÀ³¸Ó­n¦p¦ó­×¥¿¤~OK¡H
ÁÂÁ±z¡I

¦^´_ 1# c_c_lai
  1. Option Explicit
  2. Sub Ex()
  3.     With ActiveSheet.ChartObjects(oShape.Name).Chart
  4.         .Axes(xlCategory).TickLabels.NumberFormatLocal = "hh:mm"
  5.         .Axes(xlCategory).MajorTickMark = xlNone
  6.         .Axes(xlCategory).TickLabelPosition = xlLow
  7.         Cells(Lines, 38).Value = ActiveChart.ChartTitle.Text
  8.     End With
  9. End Sub
½Æ»s¥N½X

TOP

¤Ó·P¿E±z¤F¡A ¹ï©ó§Ú³o­Ó­èIJºN VBA ªº¤H¨Ó»¡ªº½T¬O¤j¦³À°§U¡A
¥¦©M¤@¯ë¶Ç²Î»y¨¥½T¹ê¦³¨Ç¤£¦P (C/C++,Java....)¡AÁÂÁ±zËç¡I

TOP

¦U¦ì¤j¤j½ÐÀ°­Ó¦£¡G
§Ú¤w§â GBKEE «e½úªº Code ¤Þ¤J¡A°õ¦æ®É«o¥X²{¤F¥H¤U¤§¿ù»~°T®§¡A±N¥¦­ÌMarked¤S«ì´_¥¿±`¡A
°_°ÝÀ³¦p¦ó³B²z¡H ÁÂÁ¦U¦ì¤j¤j¡I

' °õ¦æ¶¥¬q¿ù»~ '-2147467259 (80004005)':
' Automation ¿ù»~
' µLªk«ü¥Xªº¿ù»~

TOP

¦^´_ 4# c_c_lai

±æ¤F®×¦^Âжs¡A©Ò¥H¤S¦Aµo¤F¤@¦¸¡A¹ï¤£°_¡I

¦U¦ì¤j¤j½ÐÀ°­Ó¦£¡G
§Ú¤w§â GBKEE «e½úªº Code ¤Þ¤J¡A°õ¦æ®É«o¥X²{¤F¥H¤U¤§¿ù»~°T®§¡A±N¥¦­ÌMarked¤S«ì´_¥¿±`¡A
°_°ÝÀ³¦p¦ó³B²z¡H ÁÂÁ¦U¦ì¤j¤j¡I

' °õ¦æ¶¥¬q¿ù»~ '-2147467259 (80004005)':
' Automation ¿ù»~
' µLªk«ü¥Xªº¿ù»~

TOP

¥»©«³Ì«á¥Ñ alexliou ©ó 2012-4-6 15:31 ½s¿è

¦^´_ 1# c_c_lai
1.  ­ì¨Ó²Ä 18¦CªºCode : Shapes(oShape.Name).Select
«e­±¦pªG¨S¼g¬O¦b¨º¸ÌªºShape®É, ¦b³o­Ó¤u§@ªí©MThisWorkbook³£·|µo¥Í¿ù»~
¦pªG§ï¦¨  ActiveSheet.Shapes(oShape.Name).Select   
§Ú´ú¸Õªºµ²ªG¬O¨âÃä³£¥i¥H°õ¦æ
2. ¨º¥|¦æµ{¦¡½X §Ú´ú¸Õªºµ²ªG¬O¥i¥Hwork
Alex

TOP

¦^´_ 5# c_c_lai
¶Ç¤WÀɮ׬ݬÝ

TOP

¦^´_ 7# GBKEE
¤p§Ì±N¹ê»Ú¦b°õ¦æªºµ{¦¡½X¶K¤W¡A·q½Ð¦U¦ì«e½ú«ü¾É¡C
  1. Sub setRowColumn()  ' ¥H Excel -> ´¡¤J -> §é½u¹Ï¡Bª½±ø¹Ï ¤è¦¡¤@¤@´¡¤J©ó¤u§@ªí³æ¤ºªºÀˬd¤è¦¡¡C
  2.     Dim oShape As Shape
  3.     Dim numChart As Integer
  4.     Dim totalRows As Single
  5.    
  6.     numChart = 0
  7.    
  8.     Sheets("²Î­p¹Ïªí").Select
  9.     totalRows = Range("B" & Rows.Count).End(xlUp).Row        ' ¶Ç¦^ B Äæ©Ò¨Ï¥ÎÀx¦s®æ¤§³Ì«á¤@®æ¤§¦C¸¹
  10.             
  11.     For Each oShape In ActiveSheet.Shapes
  12.         If oShape.Type = 3 Then
  13.             numChart = numChart + 1
  14.             
  15.             Active.Shapes(oShape.Name).Select                     ' ¦pªG Shapes «e¥[¤W Active. °õ¦æ®É·|¥X²{  ---->  °õ¦æ¶¥¬q¿ù»~ '424':  ¦¹³B»Ý­nª«¥ó
  16.             ' ActiveSheet.ChartObjects(oShape.Name).Activate
  17.            
  18.             ActiveChart.SetSourceData Source:=Range("$B$1:$B$" & totalRows & ", $F$1:$F$" & totalRows & ", $V$1:$V$" & totalRows)
  19.                      
  20.             With ActiveSheet.ChartObjects(oShape.Name).Chart
  21.                 .Axes(xlCategory).TickLabels.NumberFormatLocal = "hh:mm:ss"
  22.                 .Axes(xlCategory).MajorTickMark = xlCategoryScale
  23.                 .Axes(xlCategory).TickLabelPosition = xlLow
  24.                         
  25.                 Cells(Lines, 38).Value = .ChartTitle.Text
  26.             End With
  27.                   
  28.             ActiveSheet.Shapes(oShape.Name).Left = Cells(31, 1).Left     ' ³]©w¦¹¹Ïªí¹ê»ÚÂ\©ñªº X¡BY ®y¼Ð¦ì¸m¡C
  29.             ActiveSheet.Shapes(oShape.Name).Top = Cells(31, 1).Top
  30.                     
  31.             ActiveChart.ChartArea.Height = 488                           ' ±N­ì¥»³]©w¤§°ª«×½Õ¦Ü¾A«×¦ì¸m
  32.             ActiveChart.ChartArea.Width = 900
  33.             
  34.             ActiveChart.SeriesCollection(1).InvertIfNegative = True
  35.             ActiveChart.SeriesCollection(1).InvertColor = RGB(32, 178, 208)

  36.             With ActiveChart.SeriesCollection(1).Format.Fill
  37.                 .Visible = msoTrue
  38.                 .ForeColor.RGB = RGB(255, 69, 0)
  39.                 .Transparency = 0
  40.                 .Solid
  41.             End With
  42.         End If
  43.     Next
  44. End Sub
½Æ»s¥N½X
1.  ¦pªG Shapes «e¥[¤W Active. °õ¦æ®É·|¥X²{  ---->  °õ¦æ¶¥¬q¿ù»~ '424':  ¦¹³B»Ý­nª«¥ó

    Active.Shapes(oShape.Name).Select                     ' ¦pªG Shapes «e¥[¤W Active. °õ¦æ®É·|¥X²{  ---->  °õ¦æ¶¥¬q¿ù»~ '424':  ¦¹³B»Ý­nª«¥ó
    ' ActiveSheet.ChartObjects(oShape.Name).Activate

2A.  ¦pªG Shapes «e®³±¼¼W¥[¤§ Active. °õ¦æ®É

    Shapes(oShape.Name).Select                     
    ' ActiveSheet.ChartObjects(oShape.Name).Activate

    ©ÎªÌ¬O¥H

    ' Shapes(oShape.Name).Select                     
    ActiveSheet.ChartObjects(oShape.Name).Activate

    ¤è¦¡°õ¦æ®É·|¥X²{  ---->  °õ¦æ¶¥¬q¿ù»~ '5':  µ{§Ç©I¥s©Î¤Þ­z¤£¥¿½T

2B. ¥H 2A ¼Ò¦¡³B²z¡A¤§«á°lÂܵ²ªGµo²{°ÝÃD¥X¦b

    With ActiveSheet.ChartObjects(oShape.Name).Chart
        .Axes(xlCategory).TickLabels.NumberFormatLocal = "hh:mm:ss"
        .Axes(xlCategory).MajorTickMark = xlCategoryScale
        .Axes(xlCategory).TickLabelPosition = xlLow
                        
        Cells(Lines, 38).Value = .ChartTitle.Text
    End With

  2BA:  ¦pªG±N¨ä¤¤ Cells(Lines, 38).Value = .ChartTitle.Text Marked°_¨Ó°õ¦æ

    With ActiveSheet.ChartObjects(oShape.Name).Chart
        .Axes(xlCategory).TickLabels.NumberFormatLocal = "hh:mm:ss"
        .Axes(xlCategory).MajorTickMark = xlCategoryScale
        .Axes(xlCategory).TickLabelPosition = xlLow
                        
        ' Cells(Lines, 38).Value = .ChartTitle.Text
    End With

    °õ¦æ®É·|¥X²{  ---->   °õ¦æ¶¥¬q¿ù»~ '-2147467259 (80004005)':
                          Automation ¿ù»~
                          µLªk«ü¥Xªº¿ù»~

  2BB:  ¦pªG¥u±N¨ä¤¤²Ä¤@¶µ Marked °_¨Ó°õ¦æ

    With ActiveSheet.ChartObjects(oShape.Name).Chart
        ' .Axes(xlCategory).TickLabels.NumberFormatLocal = "hh:mm:ss"
        .Axes(xlCategory).MajorTickMark = xlCategoryScale
        .Axes(xlCategory).TickLabelPosition = xlLow
                        
        Cells(Lines, 38).Value = .ChartTitle.Text
    End With

    °õ¦æ®É·|¥X²{  ---->  °õ¦æ¶¥¬q¿ù»~ '5':  µ{§Ç©I¥s©Î¤Þ­z¤£¥¿½T

  2BC:  ¦pªG¥u±N¨ä¤¤½èºÃªº¨â¶µ Marked °_¨Ó°õ¦æ

    With ActiveSheet.ChartObjects(oShape.Name).Chart
        ' .Axes(xlCategory).TickLabels.NumberFormatLocal = "hh:mm:ss"
        .Axes(xlCategory).MajorTickMark = xlCategoryScale
        .Axes(xlCategory).TickLabelPosition = xlLow
                        
        ' Cells(Lines, 38).Value = .ChartTitle.Text
    End With

    °õ¦æ°_¨Ó²@µL²§¼Ë¡A¦ü¥G¬O¤@¤Á¥¿±`ªº¼Ë¤l¡C

³o©Î³\¬O§Ú¥Î¥\¤´µM¤£¨¬¡A©|½Ð«üÃÒ¡I

TOP

¥»©«³Ì«á¥Ñ GBKEE ©ó 2012-4-6 09:35 ½s¿è

¦^´_ 8# c_c_lai
»yªk¿ù»~    Active.Shapes(oShape.Name).Select                     
¥¿½T           ActiveSheet.Shapes(oShape.Name).Select

ÅܼÆLines ¨S¬Ý¨ì§A«ü©w­È ÁÙ¬O·|¦³¿ù»~ªº
Cells(Lines, 38).Value = .ChartTitle.Text

*********
2A.  ¦pªG Shapes «e®³±¼¼W¥[¤§ Active. °õ¦æ®É
    Shapes(oShape.Name).Select                     
    ' ActiveSheet.ChartObjects(oShape.Name).Activate
    ©ÎªÌ¬O¥H
    ' Shapes(oShape.Name).Select                     
    ActiveSheet.ChartObjects(oShape.Name).Activate
    ¤è¦¡°õ¦æ®É·|¥X²{  ---->  °õ¦æ¶¥¬q¿ù»~ '5':  µ{§Ç©I¥s©Î¤Þ­z¤£¥¿½T
***************
2003ª© ¬ÒµL¿ù»~  ½Ðªþ¤WÀÉÀɮפè«K¸Ô¬Ý

TOP

ªþ¤WÀɮסAÁÂÁ±z¡I
¦¨¥æ»ù»P¦¨¥æ¶q.rar (39.68 KB)

TOP

        ÀR«ä¦Û¦b : ºw¤ô¦¨ªe¡C²É¦Ì¦¨ÅÚ¡A¤Å»´¤vÆF¡A¤Å¥Hµ½¤p¦Ó¤£¬°¡C
ªð¦^¦Cªí ¤W¤@¥DÃD