标签: excel-2003

太多不同的单元格格式

  1. 我有一个大型文件,从头开始重新创建10张,更新了12张,原始数据加载了5张,报告的宏使用了7张.
  2. 我最近添加了一个新工作表,并且我遇到了Excel "太多不同的单元格格式"问题.

我试过的

我已经阅读了一些谷歌搜索结果,他们说我应该简化格式化,但我甚至不知道我如何获得4000种不同的单元格格式,更不用说我使用了哪些格式,所以我可以删除一些.

它也会弹出一些文件运行的时间,但不是全部,直到它出现,然后每次运行时都会发生.由于宏正在做很多工作,包括从头开始创建10张,我不知道该怎么做.

有人知道吗

  • 我可以运行一个宏来获取所有单元格格式的列表以及有多少单元格正在使用它们?
  • 他们信任的程序,以帮助删除多余的单元格格式?

谢谢

excel vba excel-2003 excel-vba

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

VBA哈希字符串

如何使用Excel VBA获取长字符串的简短哈希

什么是给定的

  • 输入字符串不超过80个字符
  • 有效输入字符为:[0..9] [A_Z]._/
  • 有效输出字符为[0..9] [A_Z] [a_z] (可以使用大小写)
  • 输出哈希值不应超过~12个字符(更短更好)
  • 不需要是唯一的,因为这将导致太长的哈希

到目前为止我做了什么

我认为这个答案是一个很好的开始,因为它生成一个4位十六进制代码(CRC16).

但是4位数字很少.在我的400字符串测试中,20%在其他地方得到了重复.
产生碰撞的机会太高了.

Sub tester()
    For i = 2 To 433
        Cells(i, 2) = CRC16(Cells(i, 1))
    Next i
End Sub


Function CRC16(txt As String)
Dim x As Long
Dim mask, i, j, nC, Crc As Integer
Dim c As String

Crc = &HFFFF

For nC = 1 To Len(txt)
    j = Val("&H" + Mid(txt, nC, 2))
    Crc = Crc Xor j
    For j = 1 …
Run Code Online (Sandbox Code Playgroud)

hash vba excel-2003

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

条件格式(IF非空)

我如何有条件地格式化单元格,如果不是空白,它是灰色的?

我试图做'不等于',但它没有用.

我正在使用Windows Office 2003和Windows XP.我没有看到与以下相同的功能:

在此输入图像描述

到目前为止我尝试了什么:

在此输入图像描述

编辑:想出错了什么.在我的作品(实际工作Excel)中,它们充满了白色.这不是我的Excel文件,所以我之前没有意识到这一点.

excel conditional-formatting excel-2003

12
推荐指数
2
解决办法
22万
查看次数

VBA如何在没有.Select的情况下复制单元格的内容

我正在编写一种方法,可以Target将单元格精确地粘贴到另一个单元格.该单元格是一个带有一些花式结构的运输标签.有没有办法可以做到?

本来我有这个:

Worksheets("Label").Range("A1").Value = Worksheets("Get Address").Range("A28").Value
Run Code Online (Sandbox Code Playgroud)

它适用于纯文本.然而,我失去了我创建的样式,它们是不同的,因为在第一行之后,风格是不同的:

在此输入图像描述

我也尝试使用Macro Recorder,我得到了一个使用的解决方案.Select,我读了这个问题,尽可能不使用它.我能做什么?

' Created by the Macro Recorder
Range("A28:A33").Select
Range("A33").Activate
Selection.Copy
Sheets("Label").Select
Range("A1").Select
ActiveSheet.Paste
Run Code Online (Sandbox Code Playgroud)

excel vba excel-2003 excel-vba

12
推荐指数
2
解决办法
7万
查看次数

vba:从函数返回字典

这概述了我想要做的事情.

这对我不起作用,目前还不清楚为什么.

提前感谢您的帮助.

        Sub mySub()
        dim myDict as Dictionary
            myDict=new Dictionary

                myDict=myFunc()

        End Sub

        Function myFunc()
            dim myDict2
                set myDict2 = new Dictionary

                    'some code that does things and adds to myDict2'

            myFunc=myDict2
        End Function
Run Code Online (Sandbox Code Playgroud)

excel vba excel-2003 excel-vba

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

在VBA宏中获取错误过程太大(Excel)

我正在进入Procedure too Large ErrorVBA宏.

我正在使用MS-Excel 2003.

excel vba excel-2003 excel-vba

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

如何将Excel中的单元格值限制为另一个工作表中的选项?

在Excel(2003)中,我想将单元格中值的选择限制为另一个电子表格中允许的值.

例如,在我所拥有的"货币"表中

EUR,1.1
GBP,1.0
USD,1.5

(这是两列,三行)

在我的主要表格中,我想要一个货币列,其中唯一允许的值来自货币表中的A列,即单元格只能包含'EUR','GBP'或'USD'.(在其他地方,我将使用它作为查询来获得汇率,即B列.)

如何限制单元格中的值?像从其他工作表填充的Windows组合框一样下拉将是伟大的.

使用公式,VBA或其他任何答案都可以.即使是指向相关文档的指针也会很棒(我看过,但我不确定要寻找什么).

使用LibreOffice也很有帮助,因为我还没有最终确定电子表格程序的选择,但我认为我有更好的机会在Excel中获得答案.

validation excel excel-2003

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

从SQL查询中将列名称拉入Excel

我正在使用Excel从SQL数据库中提取数据.我使用了另一个SO问题的代码,它运行正常.现在我想从实际表中除了表中的列名.我发现我可以使用For Each fld循环获取名称.然而,仍然存在在Excel中连续水平填充它们的问题,因为列的数量可能会改变 - 所以我认为我需要另一个对于每个循环也或类似的东西.

Sub GetDataFromADO()

'Declare variables'
    Set objMyConn = New ADODB.Connection
    Set objMyCmd = New ADODB.Command
    Set objMyRecordset = New ADODB.Recordset

'Open Connection'
    objMyConn.ConnectionString = "Provider=SQLOLEDB;Data Source=localhost;User ID=abc;Password=abc;"
    objMyConn.Open

'Set and Excecute SQL Command'
    Set objMyCmd.ActiveConnection = objMyConn
    objMyCmd.CommandText = "select * from myTable"
    objMyCmd.CommandType = adCmdText
    objMyCmd.Execute

'Loop Names'
    ' WHAT TO DO HERE????'

'Open Recordset'
    Set objMyRecordset.ActiveConnection = objMyConn
    objMyRecordset.Open objMyCmd

'Copy Data to Excel'
    ActiveSheet.Range("A1").CopyFromRecordset (objMyRecordset)

End Sub
Run Code Online (Sandbox Code Playgroud)

excel vba excel-2003 excel-vba

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

将EXE文件嵌入Excel文件中

我用:

retVal = Shell("program.EXE " & filename, vbNormalFocus)
Run Code Online (Sandbox Code Playgroud)

要执行我的Excel电子表格的程序需求.

是否可以将EXE文件嵌入excel文件中?

然后我将如何执行呢?

Ideias:

1 - 某种bin2str函数将二进制转换为字符串(因此我可以将它作为变量存储在程序中,并将str2bin(对位)存储起来

2 - 我读了一些关于OLE控件的东西(你可以把它嵌入那里),但我真的不知道从哪里开始

windows excel vba excel-2003 excel-vba

9
推荐指数
1
解决办法
6002
查看次数

Microsoft Excel宏来运行Java程序

我学会了在Jxl和POI API的帮助下使用Java程序读写Excel文件.是否可以在宏的帮助下运行Java程序?

java excel jxl excel-2003 excel-formula

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