湖濱散記部落格的樹心幽徑[login][主頁]
791:20220606嘸蝦米簡速中文字根例字與拆碼-5與氣泡排序程式

上回教學內容: 789:20220526嘸蝦米簡速中文字根例字與拆碼-4與二分搜尋程式 △ --> ,SN : @ --> ,OA : ● --> ,O2
下一回教學內容: 794:20220610嘸蝦米各式符號拆碼與排序

(1)執行excel並輸入如下資料(F2鍵可編修選定的儲存格,ALT+ENTER鍵可在儲存格內換行)




(3A)按CTRL+A以選取整個工作表,然後設定為「20點字」及「所有框線」。


(3B)於A1輸入標題文字「20220606嘸蝦米簡速中文字根例字與拆碼-5與氣泡排序程式」

(3C)將「NO,例說,字數,PRE,B欄+D欄,按鈕2結果A,按鈕2結果B」貼入A2
並選「資料/資料剖析/分隔符號」功能,分隔符號勾逗號來將A2內容切開為A2:G2的各欄文字。
並於上方英文字母欄名框邊拖曳來調整欄寬,使如上切開的各欄文字皆可完整顯示。

(3D)在A3及A4儲存格分別輸入1.01和2.01,並選住A3:A4
接著在A4儲存格右下角格線+處往下拖曳到A21來填入等差數列1.01到19.01


(3E)在C3儲存格輸入公式=LEN(B3),並將之拷給C4:C21。

(3F)在E3儲存格輸入公式 =B3 & "(" & D3 & ")",並將之拷給E4:E21。 br>
(4A)同(3C)將「|尋找|=C13 |=VLOOKUP($C$22,$C$3:$G$21,2,FALSE) |=VLOOKUP($C$22,$C$3:$G$21,3,FALSE)|=VLOOKUP($C$22,$C$3:$G$21,4,FALSE) |=VLOOKUP($C$22,$C$3:$G$21,5,FALSE) 」貼入A22並將A22內容以|為分隔符號切開為A22:G22的各欄文字,本項操作將在第22列各欄植入搜尋在C22所給定中文字的公式。

(5A)選「檔案功能表」/選項/自訂功能區/主要定位點/核取「開發人員」:

(5B)選「開發人員」功能表/插入按鈕/在F3:F4拖曳產生一個按鈕1/並輸入如下按鈕1觸發程式碼/並執行之。
Sub 按鈕1_Click()

  k = Val(InputBox("請輸入要排的欄號", "用氣泡排序法將給定欄的資料加以排序", "1"))
 MsgBox ("你輸入的欄號K=" & k)
 i = 3
 While (i <= 21)
    If (Cells(i, k).Value < Cells(i + 1, k).Value) Then
        t = Cells(i, k).Value
        Cells(i, k).Value = Cells(i + 1, k).Value
        Cells(i + 1, k).Value = t
        Cells(i, k).Interior.Color = RGB(128, 192, 255)
        Cells(i + 1, k).Interior.Color = RGB(255, 192, 128)
        MsgBox ("第" & i & "列值和第" & i + 1 & "列值對調")
    End If
    i = i + 1
  Wend

End Sub


(5C)同(5B)在F5:F6拖曳產生一個按鈕2/並輸入如下按鈕2觸發程式碼/並執行之。
Sub 按鈕2_Click()

  i = 3
  While (i <= 21)
    Cells(i, 6).Interior.Color = RGB(128, 192, 255)
    Cells(i, 6).Value = i * i
    Range("G" & i).Value = i + 1000
    i = i + 1
  Wend

End Sub



(5D)同(5B)在F7:F8拖曳產生一個按鈕3/並輸入如下按鈕3觸發程式碼/並執行之。

Sub 按鈕3_Click()

k = Val(InputBox("請輸入要排的欄號", "用氣泡排序法將給定欄的資料加以排序", "1"))
 
 MsgBox ("你輸入的欄號K=" & k)
 
 j = 1
 While j <= 21 - 3
 
 i = 3
   While (i <= 21 - j)
    If (Cells(i, k).Value > Cells(i + 1, k).Value) Then
        t = Cells(i, k).Value
        Cells(i, k).Value = Cells(i + 1, k).Value
        Cells(i + 1, k).Value = t
        
        t = Cells(i, k + 1).Value
        Cells(i, k + 1).Value = Cells(i + 1, k + 1).Value
        Cells(i + 1, k + 1).Value = t
        
    End If
    i = i + 1
   Wend
   
   Cells(i, k).Interior.Color = RGB(255, 255, 0)
   MsgBox ("第" & j & "回勝者浮出")
   j = j + 1
Wend


End Sub


(7A)選取範圍A1:G22/版面配置/列印範圍/設定列印範圍。

(7B)按CTRL+P/版面設定(頁面:「A4直向、調整為1頁寬與1頁高」;工作表「列印格線及列與欄標題」)/印表機挑Microsoft print to PDF/印出為電腦桌面上的a.pdf ,線上同學請將完成結果寄給老師bm2director@gmail.com

(8A)參考: 20220606嘸蝦米簡速中文字根例字與拆碼-5.pdf [xlsm]


select id,article_id,topic,text from lt_articles_text where article_id =791; ok. update lt_articles set num_reads=num_reads +1 where id=791; ok.