EXCEL中VBA,是否可用FOREACH語句?是什麼格式?

可以使用for each
有問題多按F1,幫助最權威。

For Each...Next 語句
請參閱 示例 特性
針對一個數組或集合中的每個元素,重複執行一組語句。
語法
For Each element In group
[statements]
[Exit For]
[statements]
Next [element]
For...Each...Next 語句的語法具有以下幾個部分:
部分
描述
element 必要引數。用來遍歷集合或陣列中所有元素的變數。對於集合來說,element 可能是一個 Variant 變數、一個通用物件變數或任何特殊物件變數。對於陣列而言,element只能是一個 Variant 變數。
group 必要引數。物件集合或陣列的名稱(使用者定義型別的陣列除外)。
statements 可選引數,針對 group 中的每一項執行的一條或多條語句。
說明
如果集合中至少有一個元素,就會進入 For...Each 塊執行。一旦進入迴圈,便先針對 group 中第一個元素執行迴圈中的所有語句。如果 group 中還有其它的元素,則會針對它們執行迴圈中的語句,當 group 中的所有元素都執行完了,便會退出迴圈,然後從 Next 語句之後的語句繼續執行。
在迴圈中可以在任何位置放置任意個 Exit For 語句,隨時退出迴圈。Exit For經常在條件判斷之後使用,例如 If...Then,並將控制權轉移到緊接在 Next 之後的語句。
可以將一個 For...Each...Next 迴圈放在另一個之中來組成巢狀式 For...Each...Next 迴圈。但是每個迴圈的 element 必須是唯一的。
注意 如果省略 Next 語句中的 element,就像 element 存在時一樣執行。如果 Next 語句在它相對應的 For 語句之前出現,則會產生錯誤。
不能在 For...Each...Next 語句中使用使用者自定義型別陣列,因為 Variant 不能包含使用者自定義型別。

excel中判斷是否文字格式的語句

用ISTEXT或者ISNUMBER函式都可以
公式類似於
=IF(ISTEXT(A1),"是","否")
或者
=IF(ISNUMBER(A1),"否","是")

SELECT語句格式是什麼

基本格式是:
select * from 表名;
如:select * from table1;
表示查詢表table1中所有記錄
當然還可以加條件語句,一般是where XXX
如:select * from table1 where 欄位名='XX';

Excel vba 怎麼判斷一條語句是否執行錯誤

可以把這條語句放在立即視窗下執行看看會不會出錯就可以檢測了

vba excel 窗體可以條用表格中過程語句嗎?

窗體不可以,但窗體事件觸發的程式可以。
並且是 能夠呼叫過程,不能呼叫過程中的某段語句。

用Sql語句怎麼驗證網址格式是否合法

select lc.name,li.title from linkclass lc left join link li on lc.id=li.aid 你的寫得本來沒什麼問題,但form寫錯了,應該是from

for語句的格式是什麼?

下面是參考;squellsc - 助理 二級
for語句的格式為:
for (初始化語句; 條件語句; 控制語句)
{
語句1 ;
語句2 ;
....
語句n ;
}
for 語句的執行順序是:首先執行“初始化語句”;然後測試“條件語句”;若條件成立,則執行語句1到語句n;然後執行“控制”語句;接著再測試條件語句是否成立,如果成立則重複執行以上過程,直至條件不成立時才結束for迴圈。如:
for(i=0;i<10;i++)......;
int i,a[]=new int[10];
for (i=0,i<10;i++) a[i]= 0;
這段程式碼把整型陣列a中的所有元素都賦成0。
你可以在for迴圈的頭部說明你的變數,而且最後一個表示式可以省略,不過要確定在語句中對變數的值有所改變,如:
for(int i=0;i<=10;) i+=i;
for迴圈中,“初始化語句”、“條件語句”和“控制語句”都可以省略,但是其間的分號不能省略。例如:
int i =0 ;
for (; ; ;)
{
if i>10 break ;
i = i +1 ;
}
for迴圈中省略“條件語句”時,在for語句{}中必須包換轉句語句控制程式在某個條件滿足時跳出for迴圈,否則將形成死迴圈

vba語句是什麼

Visual Basic for Applications(VBA)是Visual Basic的一種巨集語言,是微軟開發出來在其桌面應用程式中執行通用的自動化(OLE)任務的程式語言。主要能用來擴充套件Windows的應用程式功能,特別是Microsoft Office軟體。也可說是一種應用程式視覺化的Basic 指令碼。該語言於1993年由微軟公司開發的的應用程式共享一種通用的自動化語言--------Visual Basic For Application(VBA),實際上VBA是寄生於VB應用程式的版本。微軟在1994年發行的Excel5.0版本中,即具備了VBA的巨集功能。
VBA入門的基礎語句
選擇當前活動的工作簿:
ThisWorkbook.Activate
如果選擇其他工作簿,注意該工作簿一定是開啟的,並且不要忘記加上字尾“.xls” ,例如:
Windows("Totol.xls").Activate
選擇一個工作表:
Sheets("Balance").Activate.
選擇單元格:
Range("A1").Select
選擇連續的單元格:
Range("A1:G8").Select
選擇不連續的單元格:
Range("A1,B6,D9").Select
Range("A1,B6:B10,D9").Select
單元格間移動:
ActiveCell.Offset(13, 14).Select
Selection.Offset(-3, -4).Select
Range("G8").Offset(-3, -4).Select
注意:你可以定義一變數,並且用offset來實現,例如:
varFreightRowsCount = Range("A1").CurrentRegion.Rows.Count
ActiveCell.Offset(varFreightRowsCount, 0).Select
選擇整個工作表:
Cells.Select
選擇當前單元格所在的區域(遇到空行/空列即止):
Range("A1").CurrentRegion.Select
選擇行或列:
Rows("1").Select
Columns("A").Select
或者:
ActiveCell.EntireRow.Select
ActiveCell.EntireColumn.Select
選擇相鄰的多行/多列:
Columns("A:C").Select
Rows("1:5").Select
選擇不相鄰的多行/多列(注意:和選擇相鄰的多行/多列不同,使用"Range"而不是"Columns/Rows":)
Range("A:A, C:C, E:F").Select
Range("1:1,5:6,9:9").Select
選擇當前活動單元格向下至最後一個非空單元格:
Range("A1", Range("A1").End(xlDown)).Select
Range(ActiveCell, ActiveCell.End(xlDown)).Select
選擇當前活動單元格向上至第一個非空單元格:
Range("A32", Range("A32").End(xlUp)).Select
Range(ActiveCell, ActiveCell.End(xlUp)).Select
選擇當前活動單元格向右至第一個非空單元格。(注意:是 "xlTORight"而不是 "xlRight" )
Range("A1", Range("A1").End(xltoRight)).Select
Range(ActiveCell, ActiveCell.End(xltoLeft)).Select
選擇當前活動單元格向右至第10個單元格。
Range("A2", Range("A2").Offset(0, 10)).Select
Range(ActiveCell, ActiveCell.Offset(0, 10)).Select
選擇當前活動單元格向左至第10個單元格。
Range("A20", Range("A20").Offset(0, -10)).Select
Range(ActiveCell, ActiveCell.Offset(0, -10)).Select
選擇當前活動單元格向下至第10個單元格。
Range("a2", Range("a2").Offset(10, 0)).Select
Range(ActiveCell, ActiveCell.Offset(10, 0)).Select
選擇當前活動單元格向上至第10個單元格。
Range("A1").End(xlDown).Offset(1, 0).Select
選擇該行中第一個空單元格:
Range("A1").End(xltoRight).Offset(0,1).Select
改變區域的大小(由 A1:B5 變為 A1:D10):(注意:改區域並不是向外擴張,而是重新定義了。即 "Selection.Resize(10, 4).Select "而不是"Selection.Resize(5, 2).Select "
Excel的巨集不能記錄移至當前行的第一個單元格的動作(即你按下“Home”鍵的動作),下面的語句則可以做到:
ActiveCell.Offset(0, -ActiveCell.Column + 1).Select
移至當前列的第一個單元格:
ActiveCell.Offset( -ActiveCell.Row + 1,0).Select
如果只有一個條件及一個動作,你可以用以下語句:
If Selection.Value > 10 Then
Selection.Offset(1,0) = 100
End If
或者更簡單的:
If Selection.Value > 10 Then Selection.Offset(1,0) = 100
如果有兩個條件及兩個動作,你可以用下面的語句:
If Selection.Value > 10 Then
If Selection.Value = 12 Then
Selection.Offset(1,0) = 100
End If
Selection.Offset(1,0) = 20
End If
當有雙重條件(並存的條件)和一個動作時,你可以用下面的語句:
If Selection.Value = 10 And Selection.Offset(0,1).Value = 20 Then
Selection.Offset(1,0) = 100
End If
當有雙重條件(可選擇的條件)和一個動作時,你可以用下面的語句:
If Selection.Value = 10 Or Selection.Offset(0,1).Value = 20 Then
Selection.Offset(1,0) = 100
End If
當只有一個條件和兩個動作時,你可以用下面的語句:
If Selection.Value > 10 Then
Selection.Offset(1,0) = 100
Else
Selection.Offset(1,0) = 0
End If
當有不止一個條件,且每個條件都跟隨不同的動作時,你可以用下面的語句:
If Selection.Value = 1 Then
Selection.Offset(1, 0) = 10
ElseIf Selection.Value = 2 Then
Selection.Offset(1, 0) = 20
ElseIf Selection.Value = 3 Then
Selection.Offset(1, 0) = 30
ElseIf Selection.Value = 4 Then
Selection.Offset(1, 0) = 40
ElseIf Selection.Value = 5 Then
Selection.Offset(1, 0) = 50
End If
當你不得不測試很多條件,你可以用Select Case 語句來代替If Then..ElseIf 。語法如下:
Sub test()
Select Case Selection.Value
Case Is >= 85
Selection.Offset(0, 1) = "A"
Case Is >= 75
Selection.Offset(0, 1) = "B"
Case Is >= 65
Selection.Offset(0, 1) = "C"
Case Is >= 50
Selection.Offset(0, 1) = "D"
Case Else
Selection.Offset(0, 1) = "F"
End Select
End Sub
這段語句的意思就是:如果所選單元格的值大於85時,則其右邊那個單元格的值為“A”…… 所選單元格的值小於50時,其右邊那個單元格的值為“F” 。

SQL中插入記錄語句格式是什麼?

sql中增加記錄用insert into 語句。
sql:insert into tablename( filname1,filename2...) valuse(values1,values2...);
解釋:上面的語句就是在tablename表中插入一條記錄,插入記錄中filname1欄位的值是values1,filname2欄位的值是values2。

在vba 中使用sql 語句的格式是怎麼樣的?

應該就是你想要的吧!直接用就成!
Public Sub 技巧12_021()
Dim mydata As String, mytable As String, SQL As String
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim i As Integer
Dim myArray As Variant
myArray = Array("CY100", "魏喜", "男", "初一5班", 95, _
88, 92, 84, 93, 80, 532, #7/6/2006#)
mydata = ThisWorkbook.Path & "\成績管理.mdb" '指定資料庫
mytable = "考試成績" '指定資料表
'建立與資料庫的連線
Set cnn = New ADODB.Connection
With cnn
.Provider = "microsoft.jet.oledb.4.0"
.Open mydata
End With
'查詢資料表
SQL = "select * from " & mytable
Set rs = New ADODB.Recordset
rs.Open SQL, cnn, adOpenKeyset, adLockOptimistic
'新增記錄
rs.AddNew
For i = 0 To rs.Fields.Count - 1
rs.Fields(i) = myArray(i)
Next i
rs.Update
rs.Close
cnn.Close
Set rs = Nothing
Set cnn = Nothing
End Sub

點選檢視隱藏內容

本文內容整理自網路, 文中所有觀點看法不代表問咩的立場