已知主工作表A和辅工作表B,用字典判断工作表A中的J列与工作表B中的E列是否相同,相同的在工作表A中的AG列标注剔除,不同村空
时间: 2024-02-05 18:13:57 浏览: 24
代码实现如下:
```python
import openpyxl
# 打开工作簿
workbook = openpyxl.load_workbook('example.xlsx')
# 选择工作表A和工作表B
worksheet_a = workbook['SheetA']
worksheet_b = workbook['SheetB']
# 获取工作表B中E列的所有值,存储在一个列表中
e_column_b = [cell.value for cell in worksheet_b['E']]
# 遍历工作表A中J列的所有单元格
for cell in worksheet_a['J']:
# 如果J列单元格的值在E列列表中,即相同
if cell.value in e_column_b:
# 在AG列标注'剔除'
worksheet_a.cell(row=cell.row, column=33).value = '剔除'
else:
# 不同则留空
worksheet_a.cell(row=cell.row, column=33).value = ''
# 保存工作簿
workbook.save('example.xlsx')
```
其中,第33列即为AG列,代码根据J列的行数将'剔除'或空值写入AG列中。需要注意的是,代码中假定工作表A中的J列和工作表B中的E列都是连续的,如果有空行需要做相应的修改。
相关问题
vba 已知主工作表A和辅工作表B,用字典判断工作表A中的J列与工作表B中的E列是否相同,相同的在工作表A中的AG列标注剔除,不同的标空
可以使用 VBA 中的字典对象来实现此功能。下面是一个示例代码:
```vb
Sub CompareAndMark()
Dim dictB As Object
Set dictB = CreateObject("Scripting.Dictionary")
Dim wsA As Worksheet, wsB As Worksheet
Set wsA = ThisWorkbook.Worksheets("A") '主工作表A
Set wsB = ThisWorkbook.Worksheets("B") '辅工作表B
'将辅工作表B中的所有E列数据添加到字典中
Dim lastRowB As Long, i As Long
lastRowB = wsB.Cells(wsB.Rows.Count, "E").End(xlUp).Row
For i = 1 To lastRowB
dictB.Item(wsB.Cells(i, "E").Value) = True
Next i
'遍历主工作表A中的J列
Dim lastRowA As Long, j As Long
lastRowA = wsA.Cells(wsA.Rows.Count, "J").End(xlUp).Row
For j = 1 To lastRowA
Dim valueJ As String
valueJ = wsA.Cells(j, "J").Value
'判断J列的值是否在字典中存在
If dictB.exists(valueJ) Then
'如果存在,则在AG列标注为“剔除”
wsA.Cells(j, "AG").Value = "剔除"
Else
'如果不存在,则在AG列标注为空
wsA.Cells(j, "AG").Value = ""
End If
Next j
End Sub
```
上述代码中,先将辅工作表B中的所有E列数据添加到字典中。然后遍历主工作表A中的J列,对于每个J列的值,判断是否在字典中存在,如果存在则在AG列标注为“剔除”,否则在AG列标注为空。
spark中已知表a,如何通过表a创建一张新表b并指定分区
这是一个技术问题,我可以回答。您可以使用Spark SQL中的CREATE TABLE语句来创建一张新表,并且通过PARTITIONED BY子句来指定分区,具体语句如下:
CREATE TABLE b
USING Parquet
PARTITIONED BY (<partition columns>)
AS SELECT * FROM a;
其中,<partition columns>是指需要进行分区的列名,可以有多个列名,以逗号分隔。您也可以根据需要将Parquet换成其他的数据格式,如ORC等。
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)