小编Big*_*Ben的帖子

如何使用 LibreOffice 的 RIGHT 函数获取某个字符后面的子字符串?

在单元格中A2,我有一个姓氏,AARY后跟一个左括号和一个名字(Max

\n

\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0|\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\ xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0A\xc2\xa0\xc2\xa0\xc2\xa0\xc2\ xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\ xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\ xa0\xc2\xa0|\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0 \xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2 \xa0B\n
\n-------------------------------------------------------- ----------------------
\n1 \xc2\xa0\xc2\xa0\xc2\xa0|\xc2\xa0\xc2\xa0\xc2\xa0 最后艺术家姓名 \xc2\xa0\xc2\xa0\xc2\xa0|\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\ xc2\xa0 艺术家的名字
\n---------------------------------------- --------------------------
\n2 \xc2\xa0\xc2\xa0\xc2\xa0|\xc2\xa0\xc2\xa0\ xc2\xa0 AARY(最大\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0 \xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0|\xc2\xa0这里名字是“Max”

\n
\n

我想使用命令提取不带括号的名字

=RIGHT(A2,LEN(A2)-SEARCH("(",A2))

但在括号中出现错误Err:508

\n

当我在公式末尾添加括号时,我得到LibreOffice Calc found an error in the formula entered.

\n

为什么会发生这种情况?

\n

libreoffice

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

pandas如何检查列是否不为空然后在一行代码中应用.str.replace

代码:

df['Rep'] = df['Rep'].str.replace('\\n', ' ')
Run Code Online (Sandbox Code Playgroud)

问题:如果 df['Rep'] 为空或 null ,则会出现错误:

Failed: Can only use .str accessor with string values!
Run Code Online (Sandbox Code Playgroud)

无论如何可以处理列值为空或为空时的情况吗?如果为空或 null ,则忽略该行

python dataframe pandas

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

检查工作表密码是否受保护而不打开工作簿

我一直在使用工作簿进行检查,例如,如果工作表存在或单元格中的内容,而不使用此命令打开工作簿

f = "'" & strFilePath1 & "[" & strFileType & "]" & strSheetName & "'!" & Range(strCell).Address(True, True, -4150)

CheckCell = Application.ExecuteExcel4Macro(f)
Run Code Online (Sandbox Code Playgroud)

它一直运作良好,但现在我想检查表是否密码保护没有打开,但没有成功.任何人都知道这是否可行?

提前感谢您的帮助

excel vba

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

如何在 Google 表格中查找数组的长度?

我有一个公式=SPLIT(E2,"/"),我想找到结果返回的数组的长度。

我试过:

=ARRAYFORMULA(COUNT(SPLIT(E2,"/")))
=COUNT(SPLIT(E2,"/"))
=LEN(SPLIT(E2,"/"))
Run Code Online (Sandbox Code Playgroud)

arrays google-sheets google-sheets-formula

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

Excel中有没有一种方法可以计算字符串中特定文本的出现次数,但也包括前一个字符?

我有一个电子表格,其中包含 98 行不同的字符串,这些字符串是仅使用“M”和“F”记录的男性/女性访问序列。我试图找到这些序列中男性访问的频率,这些序列将在字符串中显示为“MM”。然而,使用我在 Excel 中知道的方法,它目前会错过一些出现的情况,因为在找到匹配的字符后,它会忽略这些字符并移至下一个字符,而我需要它始终考虑最后一个字符。例如,MMM 首先是一个雄性,然后是一个雄性,但又是一个雄性,然后是另一个雄性。例如,一个单元格包含“MMMFMMMMM”,使用我所知道的 Excel 中的方法,它仅将其计为 3 次出现,因为一旦找到“MM”,它就会移至字符串的其余部分。但在我的场景中,这实际上会出现 6 次,先是一个男性,然后是一个男性,至于顺序,我总是考虑最后一个访客。有没有办法在 Excel 中使用公式甚至 VBA 或宏等来自动执行此操作?请参阅下面的示例,其中包含我当前拥有的 A 列和 B 列以及我想要添加的 C 列,以了解每个序列中 MM 访问​​的频率:

顺序 毫米数
1 多功能FFFM 0
2 FMMM 2
3 FF 0
4 MMMMMM 4
5 中号 0
6 多频多频多频多频 2

到目前为止我已经尝试过:

对于所有单元格: =SUM(LEN(B2:B7)-LEN(SUBSTITUTE(B2:B7,"MM","")))/LEN("MM") =SUMPRODUCT(--(ISNUMBER(FIND("MM", B2:B7)))) =COUNTIF(B2:B7, "*MM*")

对于每个单元格: =LEN(B2)-LEN(SUBSTITUTE(B2,"MM","")) =MATCH(2,1/(MID(B2,SEQUENCE(LEN(B2)),2)="MM"))

然而,几乎所有这些方法都只计算每个 MM 的出现,然后移动到下一个字符。其中一些还只对包含 MM 的细胞进行计数。Excel 中是否有一种方法可以计算每个单元格字符串中 MM 的出现次数,同时还考虑字符串中的前一个字符?非常感谢您的任何意见!

excel vba excel-formula

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

我在这段代码中遗漏了什么:"如果没有错误,还有什么?"

我正在尝试运行此代码,该代码首先声明wsD,然后WsS依赖于"数据"选项卡中的单元格.我一直在接受

否则没有错误.

Set wsD = ThisWorkbook.Sheets("Data")

    If wsD.Range("C4") = "AL" Then Set wsS = ThisWorkbook.Sheets("AL_Sim")
    ElseIf wsD.Range("C4") = "COLL" Then Set wsS = ThisWorkbook.Sheets("COLL_Sim")
    ElseIf wsD.Range("C4") = "COMP" Then Set wsS = ThisWorkbook.Sheets("COMP_Sim")
    ElseIf wsD.Range("C4") = "GL" Then Set wsS = ThisWorkbook.Sheets("GL_Sim")
    ElseIf wsD.Range("C4") = "EPL" Then Set wsS = ThisWorkbook.Sheets("EPL_Sim")
    ElseIf wsD.Range("C4") = "LAW" Then Set wsS = ThisWorkbook.Sheets("LAW_Sim")
    ElseIf wsD.Range("C4") = "POL" Then Set wsS = ThisWorkbook.Sheets("POL_Sim")

    End If
Next
Run Code Online (Sandbox Code Playgroud)

excel vba if-statement

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

具有多个用户的Environ功能

我试图使用environ函数只允许某些用户使用文档

这是我的问题:它使用一个用户名,而不是几个用户名....

我知道嵌套循环可能是一个解决方案,但我认为可能有一个更简单的方法.参考表也无法成功运行

目前的代码看起来像

If ((IDnumber=“12345”) or (IDnumber=“1234”) or IDnumber=“123”))  then 
Msgbox “approved”
Else: msgbox “denied”
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba

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

如何阅读声明数组大小?

我有一个数组声明,该声明导致144个插槽。我不知道我怎么知道这个数字。另外,数字之间的所有逗号是什么意思?

Dim arr4(1, 5, 5, 0 To 1) As Long
    Debug.Print ArraySize(arr4)
Run Code Online (Sandbox Code Playgroud)

excel vba

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

Excel VBA代码过滤两列并提取数据

这是我的第一篇文章,我对此感到非常兴奋。如果我的写作没有意义,我提前道歉,因为我不太熟悉编码/编程术语。

这是 我正在使用的Micro_Enabled_Excel_File 。

我有一个包含多列和行的 Excel 文件。行数会随着时间的推移而增加。我正在尝试过滤两列并复制最新/最新的数据点(行)并将其粘贴到新工作表中以创建状态报告。

Excel 数据集:图像

结果会是什么样子:图片

到目前为止我所做的:

  1. 创建了一个 Micro 来浏览“范围”和“贸易名称”列,以获取唯一条目并将其复制到另一个名为“代码”的表中。
Sub First_COPY_STYLE_TO_REPORT()

    'creating the Report sheet
    Sheets("Report").Select
    Cells.Select
    Selection.Delete Shift:=xlUp
    Sheets("Status Updates").Select
    Cells.Select
    Selection.Copy
    Sheets("Report").Select
    ActiveSheet.Paste
    Rows("2:1048576").Select
    Application.CutCopyMode = False
    Selection.ClearContents

End Sub
Run Code Online (Sandbox Code Playgroud)
  1. 创建了一个 Micro 来创建工作表“报告”的模板,该模板最终将填充下一个 Micro 的结果。
Sub Second_COPY_UNIQUE_TO_CODE()

'add title to filter columns in the Code sheet
    Sheets("Code").Select
    Rows("1:1").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Range("A1").Select
    ActiveCell.FormulaR1C1 = "Filter1"
    Range("B1").Select
    ActiveCell.FormulaR1C1 = "Filter2"

'creating the filter criteria also known as scope and trade name …
Run Code Online (Sandbox Code Playgroud)

excel vba for-loop filtering

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

查找列的行中的空单元格 | 数据框熊猫

我的数据框有一个名为“老师”的列,我想知道该列中的空行。例子:

print(df["Teacher"])
0
1
2      Richard
3
4      Richard
Name: Teacher, Length: 5, dtype: object
Run Code Online (Sandbox Code Playgroud)

我知道如果我做这样的事情:

R = ['R']
cond = df['Teacher'].str.startswith(tuple(R))
print(cond)
Run Code Online (Sandbox Code Playgroud)

它打印该列的行并以布尔值形式告诉我以 R 开头的老师。

print(cond)
0      False
1      False
2      True
3      False
4      True
Name: Teacher, Length: 5, dtype: object
Run Code Online (Sandbox Code Playgroud)

我希望空的也一样,当它为空时返回 True,当它不是时返回 false,但不知道如何。

python dataframe pandas

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