小编Sid*_*out的帖子

为什么访问AppData(在Vista上)中的文件需要管理员权限?

我的应用程序(vb.net)在尝试删除AppData文件夹中的文件时有时会抛出"拒绝访问"异常,我不知道为什么.

我确认该文件在尝试删除之前是存在的,并且没有做任何事情来使它只读,等等.

有趣的是,当我使用管理员权限登录时似乎没问题.但是,我认为AppData文件夹不需要管理员权限.

任何帮助将不胜感激!

谢谢!

vb.net windows-vista

4
推荐指数
1
解决办法
675
查看次数

将数据从Excel工作表复制到不同的文件

我有一张excel表,里面有一些巨大的数据.数据组织如下,一组7列和n行; 如表中所示,1000个这样的表水平放置,空列分开.屏幕截图如下......

在此输入图像描述 ...

我只想将每个"表"的数据保存到不同的文件中.手动它需要永远!那么,是否有一个宏或其他什么我会自动执行此任务.我不熟悉编写宏或任何VBA的东西.

谢谢,

excel vba excel-2007 excel-vba

4
推荐指数
1
解决办法
2029
查看次数

在Excel 2003 vba中插入新行非常慢

我是vba的新手 - 我实际上只做了3天.

无论如何,我有一些从用户那里获取数据的表单,然后我将它们写入单独的"日志"表的顶行.我正在使用这个:

With Worksheets("Log")
    .Unprotect
    .Range("A2").EntireRow.Insert Shift:=xlDown
    .Range("A2") = varToken
    .Range("B2") = varAction
    .Range("C2") = varLocation
    .Range("D2") = varTracking
    .Range("E2") = Date
    .Range("F2") = Time
    .Range("G2") = varPerson
    .Range("H2") = varOverride
    .Protect
End With
Run Code Online (Sandbox Code Playgroud)

麻烦的是,它会在日志表上轻弹半秒钟,然后需要很长时间才能写入.

我把它写到日志的顶行的原因是我在前面的表格中总结了使用100个varlook的vlookup(要查找100个不同的标记),它们找到了第一个(即顶部)条目在日志表中.

如果速度更快,我可以写到日志表的底部,但是我需要一个代码来替换100个vlookups,这些代码可能会在成千上万行中查找最后一个令牌,并且会快速运行!

提前致谢!

excel vba excel-2003 excel-vba

4
推荐指数
1
解决办法
1171
查看次数

按下按钮时VBA事件会引发错误吗?

当我单击工作表上的按钮时,将调用以下事件.

我收到错误'Type mismatch'

我怀疑如果事件是由于按下按钮,我需要另一个if语句来停止评估原始IF?

Private Sub Worksheet_Change(ByVal Target As Range)

    If Target = Range("D4") Then   'Error is here

    End If

End Sub
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba

4
推荐指数
1
解决办法
243
查看次数

根据条件删除行

我希望有人可以帮助解决这段代码.如果我在A栏中找到文本'FemImplant',我想删除整行.棘手的部分是这个文本是由'$'链接的句子的一部分.所以我需要代码在'$'之前解析单元格内容,看看它是否与'FemImplant'匹配并删除该行.这是我到目前为止所做的,但它是无法工作的.

Dim cell As Excel.Range
 RowCount = DataSheet.UsedRange.Rows.Count
 Set col = DataSheet.Range("A1:A" & RowCount)
 Dim SheetName As String
 Dim ParsedCell() As String

 For Each cell In col

 ParsedCell = cell.Value.Split("$")
 SheetName = ParsedCell(0)

 If SheetName = "FemImplant" Then
 cell.EntireRow.Delete Shift:=xlUp

 End If
Run Code Online (Sandbox Code Playgroud)

下一个

excel vba excel-vba

4
推荐指数
1
解决办法
9993
查看次数

无法设置PivotItem类(VBA)的Visible属性

我试图通过VBA操作Excel 2007数据透视表,以便我可以循环使用数据透视表的类别,将所有设置为不可见但只有一个,将工作表另存为pdf并继续下一个类别.为此,我使用以下代码.

Dim pf As PivotField
Set pf = ActiveSheet.PivotTables("PivotTable1").PivotFields("NAME")

Dim pi as PivotItem
For Each pi In pf.PivotItems

    If pi.Visible = False Then
        pi.Visible = True 'Error here
    End If

    Dim pi2 As PivotItem
    For Each pi2 In pf.PivotItems
        If pi2 <> pi Then
            pi2.Visible = False
        End If
    Next pi2

    'Saving to PDF goes here
Next pi
Run Code Online (Sandbox Code Playgroud)

循环似乎是第一次工作.取消选择每个类别,但第一个类别输出一个漂亮的PDF文件.下次进入循环时,它会在指定的行给出"无法设置PivotItem类的Visible属性"错误.我知道在一个数据透视表中必须至少选择一个项目,但这不是问题,因为我试图将可见性设置为TRUE而不是FALSE.

我尝试通过检查它来修复它,因为可能你不允许将已经可见的PivotItem设置为可见,但这似乎不起作用.

任何帮助将非常感谢!

excel vba pivot-table excel-vba

4
推荐指数
3
解决办法
3万
查看次数

使用VBA为特定的Excel错误消息制作消息?

有没有办法说错误1004出现,显示消息"消息"和如果错误9,显示消息"消息2"而不是通用的非描述符极客说话消息为最终用户?

excel vba excel-vba

4
推荐指数
1
解决办法
4364
查看次数

自动打开,更新和保存Excel工作簿

我想在excel中自动修改列的数字格式.

Set excel = CreateObject("Excel.Application")
Set oWB = excel.Workbooks.Open("E:\Docs\Invoice.csv")

/* Excel Macro starts */
Columns("G:G").Select
Selection.NumberFormat = "m/d/yyyy"
Columns("H:H").Select
Selection.NumberFormat = "0.00"
/* Excel Macro ends */

oWB.save
oWB.Application.Quit
Run Code Online (Sandbox Code Playgroud)

我使用命令行运行.vbs.Excel文档未更新.
有谁可以帮我解决这个问题?

提前致谢

vbscript excel

4
推荐指数
1
解决办法
6万
查看次数

使用VBA将图表系列放在辅X轴上

我有一个折线图,我试图通过VBA添加给定Y值的水平线.我正在遵循本指南,建议在现有图表中添加一行,然后将其类型更改为分散,这会导致Excel自动将系列放在辅X轴上.然后可以进一步格式化它.

我的问题是,当使用VBA执行此操作时,我不明白如何将线切换到辅助X轴.默认情况下,所有新行都将在主X轴上.

例如,假设chrt是Chart对象:

' Enable secondary X axis (I think)
chrt.HasAxis(XlAxisType.xlCategory, XlAxisGroup.xlSecondary) = True

Dim se As Series
Set se = chrt.SeriesCollection.NewSeries
se.ChartType = xlXYScatterLinesNoMarkers

' Add a line at Y = 0
se.xValues = Array(0, 1)
se.values = Array(0, 0)
Run Code Online (Sandbox Code Playgroud)

现在,如何se进入辅X轴?

excel vba excel-vba

4
推荐指数
1
解决办法
4万
查看次数

如何使每个单元格的长度为5?

我有一列有 7000 多个名字。我想让每个名字的长度不超过5. 这是我尝试过但不起作用的方法

Sub del()
    Dim myCell
    Set myCell = ActiveCell
    Dim count As Integer

    count = Len(ActiveCell)

    While count > 5
        myCell = Left(myCell, Len(myCell) - 1)
        myCell.Offset(1, 0).Select
        Set myCell = ActiveCell
    Wend
End Sub
Run Code Online (Sandbox Code Playgroud)

excel vba

4
推荐指数
1
解决办法
58
查看次数