小编urd*_*boy的帖子

将对象设置为"Nothing"有什么好处

我注意到有些人会Set Object = Nothing在结账程序中使用.我能够找到为什么这对Access的实例有用,但是在为Excel执行此操作时没有答案令人满意,那么, 将对象设置为Nothing的好处是什么?

我把它添加到我的代码中作为例子来支持这个问题,但这只是浪费空间吗?如果这是一个好习惯,为什么?

至于代码都没有问题, Set = Nothing.我从具有我们不需要的过多列的系统导出中获取数据.为了减少复制/粘贴迭代的数量,我使用union来获取所有范围,但两个除外.需要切换最后两列的顺序,这就是我被迫分别复制/粘贴它们的原因.

With CurrentBook.ActiveSheet

    Dim LRow2 As Long
    LRow2 = .Range("BG" & .Rows.Count).End(xlUp).Row

    Dim Range1 As Range: Set Range1 = .Range("A2:C" & LRow2)
    Dim Range2 As Range: Set Range2 = .Range("F2:F" & LRow2)
    Dim Range3 As Range: Set Range3 = .Range("H2:H" & LRow2)
    Dim Range4 As Range: Set Range4 = .Range("M2:M" & LRow2)
    Dim Range5 As Range: Set Range5 = .Range("P2:P" & LRow2)
    Dim Range6 As …
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba

7
推荐指数
1
解决办法
194
查看次数

Excel 跨列唯一

新函数UNIQUE是否可以跨不同列使用并将输出溢出到单个列中?


所需的输出是UNIQUE一列中的值,基于中存在的所有值Columns: A, B, & C示例中为红色的重复项

在此处输入图片说明


  • 如果我只是使用,UNIQUE(A7:C7)我会得到跨列的溢出范围(这甚至不提供跨列的唯一值,这是出乎意料的
  • 我也尝试过,UNIQUE(A2:A6) & UNIQUE(B5:B10) & UNIQUE(C2:C5)但这只是连接了值(也出乎意料但不相关

excel excel-formula dynamic-arrays office365

7
推荐指数
4
解决办法
941
查看次数

日期之间(开始和现在)

不确定如何使用此NOW()功能。似乎应该是直截了当的,但是我没有运气

SELECT DISTINCT field
FROM table
WHERE field BETWEEN '2019-01-01' and NOW()
Run Code Online (Sandbox Code Playgroud)

字段= varchar

sql presto

5
推荐指数
1
解决办法
36
查看次数

您可以在不嵌套的情况下对许多值使用 SUBSTITUTE 吗?

有没有办法一次交换多个字符串实例而不嵌套?

例如,假设我想从字符串中删除以下值的所有实例:

  • 目标
  • 沃尔玛
  • CVS

输入字符串: “我去了 Target 而不是沃尔玛,但我真的想去 CVS”
输出字符串: “我去了而不是但我真的想去”


我尝试了输入=SUBSTITUTE(A1,H1:H3,"")在哪里以及要替换的字符串,但这仅交换第一个字符串A1H1:H3

我知道如何在 VBA 中执行此操作,但该项目无法使用 VBA

excel excel-formula

5
推荐指数
2
解决办法
1861
查看次数

数据透视表字段显示除空白之外的所有内容

我需要在刷新后更新数据透视过滤器以选择除 之外的所有过滤器选项blank
这里的其他答案使用的.ShowAllItems方法对我不起作用,因为它也会显示没有数据的项目(Display下的枢轴选项)。

我尝试使用在另一个问题上找到的另一个解决方案,.PivotItems("(All)").Visible = True然后删除空白,但这没有任何作用。

如何修改数据透视字段Activity Name以检查除空白之外的所有项目?

Sub PivotRefresh()

Dim ws As Worksheet
Dim pvt As PivotTable

Application.ScreenUpdating = False
ThisWorkbook.RefreshAll
Application.Calculation = xlCalculationManual
    For Each ws In Worksheets
        If ws.Name = "OC" Or ws.Name = "P2" Then
            For Each pvt In ws.PivotTables
                On Error Resume Next
                    pvt.PivotFields("Exclude").PivotItems("Yes").Visible = False
                    pvt.PivotFields("Activity Name").PivotItems("(All)").Visible = True
                    pvt.PivotFields("Activity Name").PivotItems("(blank)").Visible = False
                On Error GoTo 0
            Next pvt
        End If
        ws.Range("A:W").EntireColumn.AutoFit
    Next ws …
Run Code Online (Sandbox Code Playgroud)

excel vba pivot-table

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

Python - Openpyxl - “UserWarning: Unknown extension”问题

我正在努力学习Python(第 2 天),并希望先用Excel书本练习,因为这是我感到舒适/流利的地方。

马上我遇到了一个错误,我在运行以下代码时不明白:

import openpyxl

wb = openpyxl.load_workbook("/Users/Scott/Desktop/Workbook1.xlsx")

print(wb.sheetnames)
Run Code Online (Sandbox Code Playgroud)

这确实按要求打印了我的工作表名称,但后面跟着:

/Users/Scott/PycharmProjects/Excel/venv/lib/python3.7/site-packages/openpyxl/worksheet/_reader.py:293: UserWarning: Unknown extension is not supported and will be removed
  warn(msg)
Run Code Online (Sandbox Code Playgroud)

我发现了其他指向切片器/条件格式等的问题,但这不适用于这里。这是我刚做的一本书,在保存前只添加了 3 张。它没有数据,没有格式,并且扩展名有效。我的 excel 上也没有安装附加组件。

知道为什么我会收到此错误吗?我该如何解决?

在此处输入图片说明

Python:3.7
openpyxl:2.6

python excel openpyxl

2
推荐指数
3
解决办法
8186
查看次数

按月和年分组

我正在尝试计算按月和年分组的实例。

SELECT 
    (MONTH(CAST(t1.some_date as DATE)) + ' ' + YEAR(CAST(t1.some_date as DATE))) as Issue_Month,
    COUNT(*) as c
FROM
    (sub query) t1
GROUP BY 
    (MONTH(CAST(t1.some_date as DATE)) + ' ' + YEAR(CAST(t1.some_date as DATE)))
Run Code Online (Sandbox Code Playgroud)

错误行 2:“+”不能应用于 bigint、varchar(1)

我曾尝试换+&||构建所需的字符串,但我有没有运气。


我如何生成如下表:

Month Year  |  c
Run Code Online (Sandbox Code Playgroud)

我如何制作这张表:

Month  |  Year  |  c
Run Code Online (Sandbox Code Playgroud)

sql presto

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

复制并粘贴excel而不删除单元格当前内容

我正在尝试创建一个单元格来构建excel中的预设响应电子邮件.我需要能够将文本粘贴到单元格中而不删除该单元格中已存在的信息(我需要能够重复执行此操作.)我基本上要求帮助创建具有类似"副本"的单个单元格并将'属性粘贴为word doc.即,当我将文本粘贴到单元格中时,它会将新文本插入到上一个文本下面,而不是用剪贴板替换现有文本.

我绝对可以在VBA中使用一些帮助编码.如果有任何需要澄清的话,请告诉我!谢谢

excel vba copy-paste cell excel-vba

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

如何查看数组中的项目

我得到Subscript out of rangeDebug.Print myarr(i).

Dim ws As Worksheet: Set ws = Sheets("Sheet1")
Dim myarr as Variant, i as Long
myarr = Array(ws.Range("A2:A" & ws.Range("A" & ws.Rows.Count).End(xlUp).Row))

For i = LBound(myarr) To UBound(myarr)
    Debug.Print myarr(i)
Next i
Run Code Online (Sandbox Code Playgroud)

我用(下面)验证了范围A2:A5

Msgbox ws.Range("A2:A" & ws.Range("A" & ws.Rows.Count).End(xlUp).Row)).Address (false, false)
Run Code Online (Sandbox Code Playgroud)

我也试过换myarr

 = ws.Range("A2:A" & ws.Range("A" & ws.Rows.Count).End(xlUp).Row) 
 = ws.Range("A2:A" & ws.Range("A" & ws.Rows.Count).End(xlUp).Row).Value
 = Array(Temp.Range("A2:A" & Temp.Range("A" & Temp.Rows.Count).End(xlUp).Row).Value)
Run Code Online (Sandbox Code Playgroud)

第一个给出Subscript out of range,第二个给出type mismatch

使用数组相当新,我不知道我在这里缺少什么. …

excel vba

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

Presto - 插入数组作为函数输入

根据Presto 文档

approx_percentile(x, 百分比) ? array<[same as x]>
返回每个指定百分比处 x 的所有输入值的近似百分位数。百分比数组的每个元素必须介于 0 和 1 之间,并且对于所有输入行,数组必须是常量。


我想amount在 25th、50th、75th 和 95th 百分位数处找到相关值,假设输出是一个数组,但无法弄清楚如何将这些值提供给函数(除了提供一个值)

我尝试了我习惯看到的各种表示法,但我一直返回错误。如何输入多个值以获得数组输出?

APPROX_PERCENTILE(amount, .25, .50, .75, .95)

APPROX_PERCENTILE(amount, (.25, .50, .75, .95))

APPROX_PERCENTILE(amount, {.25, .50, .75, .95})

APPROX_PERCENTILE(amount, [.25, .50, .75, .95])   '<--- I assumed this was the proper way

APPROX_PERCENTILE(amount, <[.25, .50, .75, .95]>)

APPROX_PERCENTILE(amount, <.25, .50, .75, .95>)
Run Code Online (Sandbox Code Playgroud)

sql group-by presto

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