返回列表 上一主題 發帖

儲存格每一列固定文字大小

本帖最後由 GBKEE 於 2010-8-26 07:58 編輯

回復 3# y663258
Dim strstr As Variant     在有效範圍內 重復宣告   刪掉
size(i) 沒有減1              size的陣列會超出陣列的範圍 修正如下
Sheet1.Range("A1").Characters(j, j + Len(strstr(i, 1)) + 5).Font.size = size(i-1)

另外  j = j + Len(strstr(i, 1)) + 6         +6會超出1個字元  應是 +5 才正確
另一解法參考參考
  1. Sub Ex()   
  2. Dim Rng As Range, strstr As Variant, size As Variant, i%
  3.     Set Rng = Sheet2.Range("A1:A6")
  4.     size = Array(22, 12, 16, 12, 16, 7)
  5.     For i = 1 To Rng.Rows.Count
  6.         If Rng(i) <> "" Then
  7.             strstr = IIf(strstr <> "", strstr & Chr(10) & Space(4) & Rng(i), Space(4) & Rng(i))
  8.         End If
  9.     Next
  10.     If Len(strstr) < Rng.Rows.Count Then Exit Sub
  11.     Sheet1.Range("A1").Value = strstr
  12.     j = 4
  13.     For i = 1 To Rng.Rows.Count
  14.         If Rng(i) <> "" Then
  15.         Sheet1.Range("A1").Characters(j, j + Len(Rng(i))).Font.size = size(i - 1)
  16.        j = j + Len(Rng(i)) + 5
  17.        End If
  18.     Next
  19. End Sub
複製代碼

TOP

        靜思自在 : 有多少力量就做多少事,不要心存等待,等待才會落空。
返回列表 上一主題