gpt4 book ai didi

arrays - VBA中的列表和数组

转载 作者:行者123 更新时间:2023-12-04 06:04:29 24 4
gpt4 key购买 nike

我对VB.NET的编写非常陌生,甚至没有意识到VB.NET和VBA之间存在显着差异。我已经在Visual Studio中编写我的应用程序,但是我意识到我需要将其移植到Outlook中的VBA,并且需要处理一些语法问题。我已经搜索过,但是找不到VBA甚至VB6的任何确定性引用(例如msdn),据我所知,它比VB.NET更接近VBA。

我将在此处包括代码的相关部分。如果有人需要更多背景信息,请告诉我-我可以发布整件事,时间不长。不过,我想使这篇文章尽可能简单。

Dim DateToday As String = String.Format("0:{yyyy/MM/dd}", DateTime.Now)
Dim Computers As New SortedList()
Dim disabledList As New List(Of String)
'\\ four additional lists
Dim compArray As Array

...

Computers.Add(ComputerName, ErrorState)

新列表和排序后的列表在列表后面的括号中给出了“预期的:语句结尾”。数组在Array处提供Expected:标识符。字符串DateToday在等号处给出预期的语句结尾。尝试添加到已排序列表中的结果为Expected:=。

我已经在VB.NET上工作了两三天,而我之前从未使用过VBA或VB6,所以我只是没有必要的经验来知道从这里开始。如果你们中有人愿意帮助我,我将不胜感激!

最佳答案

您将不得不更改某些数据类型,但是鉴于我使用的数据类型可能不准确,刚发布的内容可能会转换为与此类似的内容。

Dim DateToday As String: DateToday = Format(Date, "yyyy/MM/dd")
Dim Computers As New Collection
Dim disabledList As New Collection
Dim compArray(1 To 1) As String

'Assign data to first item in array
compArray(1) = "asdf"

'Format = Item, Key
Computers.Add "ErrorState", "Computer Name"

'Prints "ErrorState"
Debug.Print Computers("Computer Name")

集合无法排序,因此,如果您需要对数据进行排序,则可能需要使用数组。

这是指向Outlook开发人员引用的链接。
http://msdn.microsoft.com/en-us/library/office/ff866465%28v=office.14%29.aspx

另一个可以帮助您入门的好网站是
http://www.cpearson.com/Excel/Topic.aspx

将所有内容从VB.Net迁移到VBA并不是一件容易的事,因为并非所有数据类型都是相同的,并且您没有.Net框架。如果您卡住了,只需发布​​要转换的代码即可,您一定会得到帮助!

编辑:
Sub ArrayExample()
Dim subject As String
Dim TestArray() As String
Dim counter As Long

subject = "Example"
counter = Len(subject)

ReDim TestArray(1 To counter) As String

For counter = 1 To Len(subject)
TestArray(counter) = Right(Left(subject, counter), 1)
Next
End Sub

关于arrays - VBA中的列表和数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17028592/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com