我只想知道运行时错误的原因:运行这些VBA代码时溢出。
Function target_time(Time) As Double
target_time = 1200 * 60 * Time
End Function
Sub Test()
x = target_time(24)
MsgBox x
End Sub
我已经解决了这个问题,将功能公式重新安排为:
target_time = Time*1200 * 60
我只想知道为什么重新定位变量会导致运行时错误溢出。
Excel 2013。VBA:这个代码:
Sub test()
On Error GoTo Err:
Dim p As Double
p = (362 * 100) / 2005
Exit Sub
Err:
If Err.Description <> "" And Err.Source <> "" Then
MsgBox Err.Description, vbCritical, Err.Source
End If
End Sub
抛出溢出号6错误。为什么?
我不使用VBA编写代码,但我需要调试其中编写的代码。当我运行代码时,我会得到一个溢出错误,我在网上查看了这个错误。我在调试器中使用断点查找给我错误的代码行。
这句话是:
lngInt = nIntA * nIntB
调试器表示nIntA (整数)= 4,851,nIntB (另一个整数)= 10。如果我正确地读取这一行,lngInt是一个长整数:
dim lngInt As Long
nIntA和nIntB使用以下方法初始化:
Public nIntA As Integer
Public nIntB As Integer
如果有帮助,则从访问表单中设置这两种方法。
这似乎不应该给我一个问题,
我使用从不同站点收集的代码来读取一个平面文件,其中每个记录都有分隔符。代码运行得很好,除非文件中的记录数超过505,它会给出运行时错误6错误。你能帮我解决这个问题吗?我没有VBA背景,但只是使用其他人的问题将应用程序的代码组合在一起
Sub Posting()
Dim RowNdx As Long
Dim ColNdx As Integer
Dim TempVal As Variant
Dim WholeLine As String
Dim Pos As Integer
Dim NextPos As Integer
Dim SaveColNdx As Integer
Dim FName As
我正在尝试使用VBA获取excel工作表的表格边界。我已经使用C#完成了这项工作,但现在我需要尝试将该代码转换为VBA。
一个问题是,语法似乎如此不同,以至于代码看起来甚至不相似,甚至它只是在做同样的事情!我想我已经很接近弄清楚表的大小了,但是我得到了这条Run-time error '6': Overflow消息。
代码如下:
Dim currentRow As Integer
Dim totalRow As Integer
Dim column As Integer
currentRow = 2
Do
ActiveCell.Offset(1, 0).Select
tot
我有一个Flask应用程序,我想部署在Google app Engine上。一切都检查得很好,需求文件包含所有成功安装的模块。但在接近尾声时,我得到了这个错误:
from .cv2 import *
ImportError: libSM.so.6: cannot open shared object file: No such file or directory
我在各种博客和其他类似的堆栈溢出问题上读到过,您需要使用以下命令安装libsm6:
sudo apt-get install libsm6
但即使我这样做了,我仍然得到相同的错误。我该如何解决这个问题?
所有人。这是我写的一个小函数,里面全是用来调试的MsgBoxes。
我传入了数字10和1作为参数,当程序到达For循环的顶部时,在它开始第一次迭代之前,会得到一个溢出错误。
任何想法都是值得感谢的。
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Function PerformanceTest(iterations As Integer, interval As Integer) As Double
Dim st, tot, k As Double
Dim n As Intege
我正在创建一个宏来自动生成发票。它要做的一件事是将今天的日期分配给发票中的一个表单字段,并通过向今天的日期添加天数(由用户作为整数插入表单字段)来计算到期日。
在宏上,我得到了一个非常基本的错误,在这个宏中,以下代码会遇到“错误6:溢出”:
dim invDate as Date, dueDate as Date
dim days as Integer
dim invDateFF as Formfield, dueDateFF as Formfield, daysFF as Formfield
set invDateFF = Activedocument.Formfields("Da
我是VBA的新手。最近,我输入了一些代码,下面是我的代码示例:
Dim n As Long
n = Range("A1", Range("A1").End(xlDown)).Rows.Count
For i = 3 To n
Range("P" & i).Value = WorksheetFunction.IfError(Range("N" & i).Value / Range("O" & i).Value, 0))
Next
结果是有溢出的错误。我已经在互联网上搜索并计算出我的示例代码应该
我在VBA上遇到了这个问题...我需要创建组合,但当N>22和K=5时,VBA返回运行时错误'6':溢出。我试图通过用.xlxs保存文件来解决这个问题,但问题仍然存在。所以我试着将变量切换到32位,但我真的不知道如何修改代码。
请在下面找到它:
Public col(100), r, n, nr As Integer
Function comb(k)
col(k) = col(k - 1)
While col(k) < n - r + k
col(k) = col(k) + 1
If k < r Then
comb (k + 1)
Else
nr = nr
我试着用口述录音机录制声音,但在安卓6+上,我得到了许可错误。我添加了用于询问权限的代码(对于ask有3个权限)2工作,但是CAPTURE_AUDIO_OUTPUT显示错误。只是不要求我批准。在日志中,它只是“不授予”,任何人都知道有什么问题吗?
public static boolean PermissionCheck(Activity context, String permission, int code) {
boolean state = false;
int permissionCheck = ContextCompat.checkSelfPerm
我正在构建一组VBA函数来操作MS-Access数据库中的IP地址字符串,每当IP地址值超过Integer变量的大小时,我就会遇到溢出错误的问题。我试图确保我只使用长类型,但我仍然得到这些错误。下面是一个非常简单的演示,它在溢出的情况下失败了,我不知道为什么。
Public Function BigNumber() As Long
Dim N256 As Long
N256 = 256
BigNumber = N256 * N256 * N256 * N256
End Function
我读过其他线程,这些线程解释了如果表达式中的任何术语对于产品来说太小,VBA可能会产生溢出错误,但我看不出这
使用Access 2010,我为跨越5个不同表单的表创建了条目单元格,并在每个窗体上创建了命令按钮以在它们之间导航,过滤当前窗体上ID的下一个表单。五个命令按钮中的四个可以很好地过滤到适当的表单,但是与一个表单相关联的命令按钮--一个错误消息读取:
保留错误(-3087);没有此错误的消息。
我使用了宏和VBA在表单之间导航,使用了Where条件下带有过滤器的OpenForm或DoCmd.OpenForm。宏看起来是这样的:
Open Form
Form Name "MyForm"
View Form
Filter name
Wh
我有一个快速的排序实现,这个排序实现可以很好地处理小数组和10000个随机数,但是当输入为10000个序列号(从1到10000)时,它会抛出堆栈溢出错误。
public class QuickSort<T extends Comparable> extends Sort<T>{
public void sort(Comparable[] input) {
sort(input, 0, input.length-1);
}
private void sort(Comparable[] a, int lo, int hi) {
if (hi <=
我已经在ThisWorkbook (Excel2010)中的personal.xlsb中创建了以下vba脚本:
Sub Workbook_Open()
Application.ActiveWindow.AutoFilterDateGrouping = False
End Sub
它不起作用。我收到vba运行时错误: 91对象变量或未设置块变量。虽然它的工作,如果手动运行后打开的文件。
这样做的目的是为所有新打开的文件自动将AutoFilterDateGrouping设置为False。
我有一个工作表,其中包含的代码将触发一些VBA代码,这取决于选择了哪些单元格。(单元格具有按钮的功能)。由于用户可以选择包含多个单元格的范围,所以限制这个问题的方法(当单元格包含在所选的范围中时不触发vba代码,但IT并不是唯一的单元格),所以当用户选择多个单元格(包括触发vba的单元格)时,这个工作确实很好,但是我想知道为什么当用户使用CTRL-A选择所有单元时会出现错误。
这是工作表后面的代码
Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count = 1 Then
run some code
如果
更新:,我想我找到了答案,但我还没能看到在Excel2013中是否有办法做到这一点。
这个链接有关于ModelMeasures.Add方法的文档,但是我现在还没有找到真正的好例子。如果有一个在Excel 2013中使用VBA向模型添加度量的好示例,请共享答案。
我能找到但无法在Excel2013中完成的最好例子:
原始帖子:
我试图使用VBA自动将计算出的字段添加到powerpivot枢轴表中。我在VBA方面没有经验。
当我使用下面的公式手动添加一个计算字段时,我能够看到添加的计算字段。这个VBA代码有什么问题?
这里是我的代码:
Sub Macro5()
Dim PvtTbl As
我有一个问题,把一个溢出数组传递给VBA。范围由名称"ListCurJobs“和方程定义。
=UNIQUE(FILTER(CtrlSht!$B:$B,CtrlSht!$B:$B<>""))
使用"=ListCurJobs“测试工作表上的命名范围,将按预期返回溢出的范围。
我正在尝试将它传递给VBA,使用
Sub ListJobs
Dim listCurJobs() As Variant
n = Worksheets("CtrlSht").Range("listCurJobs").Rows.Count
ReDim l
我只是在尝试学习VBA编程,当我运行一个简单的代码时,将一个变量赋值为双精度值,然后为该变量赋值,然后为该变量创建一个消息框。如果我逐行调试代码,那么在为变量赋值时会出现溢出错误。但是,如果我简单地一次编译所有的代码,它没有问题。 我不确定现在该怎么做,因为即使简单地给变量赋值6也会导致溢出错误 Sub myVariable()
Dim blah As Double
blah = 6.4
MsgBox blah
End Sub 因此,如果我逐行调试这段代码,当"blah = 6.4“突出显示时,我会得到一个溢出错误,并且不能继续下去。如果我点击F5并编译整个代码,msgbox就会像它
我对Stack溢出和VBA很陌生。我尝试编写一些小的VBA代码来选择Excel中包含一定数字的所有行(从A到E)。
(部分)到目前为止我的代码
Dim ploeg as range
Dim ploeg2 as range
For v = 1 To 100
If Cells(v, 6) = 1 Then
Set ploeg = Range(Cells(v, 1), Cells(v, 5))
Set ploeg2 = Union(ploeg2, ploeg)
End if
Next v
Ploeg2.Select
但这行不通..。
有人能帮我吗?
我有一个VBA,连同许多其他东西,将一个excel工作簿保存到SharePoint (我认为是企业2010 ),它大部分时间运行良好,但在用户运行VBA时,Excel会冻结,弹出显示“获取可用内容类型和属性的列表.”。如果用户选择取消另一个弹出,则出现“运行时错误'1004':对象'_Workbook‘的方法'SaveAs’失败。如果用户选择”Debug“,则VBA的最后一行突出显示为创建错误。
Dim fileName As String
Dim excelDirName As String
fileName = [c9]
excelDirName = [c
我在和约会打交道,我遇到了一个奇怪的问题。如果将160乘以1440,60*24,则vba即使在使用long时也会产生溢出错误。但是,如果将160乘以86440,60*60*24,则不会发生溢出错误。有人知道为什么会发生这种事吗?我已经在周围找到了一份工作,但这没有任何意义。
谢谢你的帮助!
Sub test()
Dim numb As Long
numb=160*1440
numb=160*86400
End Sub
如果您注释掉了第一行,它将运行,没有溢出错误,但是溢出中的第一行会发生错误。
Hello试图测试一个算法(Quicksort),方法是用1000个数字对数组进行排序,但是我得到了堆栈溢出错误。我在前面发现,我应该将数组保存在堆上而不是堆栈上。所以我就这样做了。
int *enMiljon = new int[1000000];
而不是这样:
int enMiljon[1000000] = {};
我就是这样调用这个函数的,它看起来是这样的:
quicksortPivotLast(enMiljon, 999999);
template <typename T>
int partitionPivotLast(T arr[], int st
一种算法,用于找出可以将列表分成两部分的方法的数量,以便左侧的每一项都小于右侧的每一项。
目前,我有以下功能,但这并不是很有效...另外,我需要能够用O(n)来做这件事,这是因为嵌套循环...
def get_subsets(l):
n = len(l)
subsets = []
for i in range(n + 2):
for j in range(i + 2, n + 1):
if l[i:j][-1] > l[i:j][-2]:
subsets.append(l[i:j])
re
我在幻灯片中插入了一个listview控件。在下一步中,我尝试使用以下代码显示所有文件和文件夹+图标:
For Each fileName In IO.Directory.GetFiles("C:\")
ImageList21.Images.Add (Icon.ExtractAssociatedIcon(fileName))
ListView31.Items.Add (system.IO.Path.GetFileName(fileName)) , _
ImageList21.Images.Count - 1)
Next fileName
它在Vi
class QuickSort {
public static void main(String[] args) {
int arr[] = { 8, 3, 5, 1, 34, 6, 35, 5, 23, 2, 7 };
int n = arr.length;
for (int x : arr)
System.out.print(x + " ");
System.out.println();
qSort(arr, 0, n - 1);
for (int x : arr)
System.out.pr