返回列表 上一主題 發帖

[發問] 如何自動編號 及刪除資料

[發問] 如何自動編號 及刪除資料

本帖最後由 atuan207 於 2011-4-19 18:07 編輯

各位板上的大大您好:
最近自己在做一個生日表的練習,是用vab寫成視窗化
可是目前有點卡關,不知道該如何讓它輸入的資料自己編號
大概的樣子像這樣

會輸入的資料只有B,C,D
不過想做成的表格格式
3.PNG
Q1:
A資料是放學號,所以想讓他藉由B資料的新增而自動編排
可是對於取得資料端點這部份的語法不是很熟悉,
我有爬文爬到一篇"如何在A欄 自動填上編號" 連結=>http://forum.twbts.com/thread-926-1-36.html
當中老師使用的方法.SpecialCells(xlCellTypeConstants)<=這個有點不懂在做什麼的
所以想請教板上的大大
我自己有想個方法,是否可以藉由判讀B欄的內容,如果有值得話,則A欄位放值
或者是用FOR迴圈來做???不過FOR迴圈好像只有一開始會跑,如果要做在新增不知道恰不恰當
Q2:
因為刪除資料想用透過學號來判別,這部分不知道該如何做
刪除的語法Rows(1).delete 這是刪除第一列
如果想判讀輸入A的值後刪除相對應的,是不是該把(1)的值放成變數 EX Rows(a).delete 這樣做???
自己目前想的:
Private Sub Cbo刪除資料_Click()
     Dim a as Range
     Dim b as Range 'b值定義為A行的值
     If  a = b then
     row.(a).delet
     else
     MsgBox "查無此資料"
    End if
End Sub
是這樣嗎????

不好意思因為才剛自學大概三週
對於如何讓他判讀整行的方法還不會
想請教板上的大大
感謝

2.PNG (4.06 KB)

2.PNG

3.PNG (5.65 KB)

3.PNG

謝謝大大們的幫助,小弟看完大大的程式後有一些問題想問
我試著做一下註解釐清觀念 順便請教一下

自動編號的:
Range("A2:A65536").ClearContents
//是指從A2~An個欄位 clear這個是清除公式保留格式設定嗎???
Range("A2") = 1
//A2的為起點1
Range("A2:A" & Range("B65536").End(xlUp).Row).DataSeries
// A2:A  不懂  B(65536)是指B整行  .end(xlup)是指取得連續區域上端的值
//.DataSeries這行F1解釋為在指定範圍內建立資料數列。 但在這用的意思是??
刪除的:
Dim myrange As Range   //定義myrange
Set myrange = Columns("A:A").Find(TextBox1.Value)
//列("A:A")   "A:A"跟上面一樣不懂(應該是一樣的宣告方式) 尋找輸入txt的值
If myrange Is Nothing Then
Exit Sub
//如果沒事就離開
Else
Rows(myrange.Row).Delete
//否則就刪除myrange輸入的那列
End If

註解這樣對嗎????
編號的問題比較多,刪除的少一些
還麻煩大大糾正小弟的觀念

TOP

謝謝FAlonso大大的解說
因為我也是昨天在搜尋資料才發現這加入的
所以權限還不足,還沒辦法回短消息,
信箱是帳號+yahoo
感謝FAlonso大大

TOP

        靜思自在 : 人生沒有所有權,只有生命的使用權。
返回列表 上一主題