小编Tan*_*man的帖子

从变量引用另一个工作簿中的工作表时下标超出范围

看图片: http: //s12.postimg.org/ov8djtuh9/Capture.jpg

上下文:尝试激活另一个工作簿中的工作表(变量:cSheet),并将从不同工作簿复制的数据粘贴到其中。每当我尝试直接使用变量(即 Worksheets(Name).Activate)激活或尝试使用变量定义工作表然后激活它时,我都会收到下标超出范围错误。我还尝试了其他编码风格,使用“With Worksheet”等,我的代码更长,但我重新开始,因为每次我修复某些东西时,其他东西就会出错。所以,坚持基础。任何帮助将不胜感激。

Sub GenSumRep()

Dim AutoSR As Workbook
Dim asrSheet As Worksheet
Dim tempWB As Workbook
Dim dataWB As Workbook
Dim SecName As String
Dim oldcell As String
Dim nsName As String
Dim cSheet As Worksheet

Set AutoSR = ActiveWorkbook
Set asrSheet = AutoSR.ActiveSheet

For a = 3 To 10

    SecName = asrSheet.Range("D" & a).Value

    If SecName <> "" Then

    Workbooks.Open Range("B" & a).Value
    Set tempWB = ActiveWorkbook
    'tempWB.Windows(1).Visible = False

    AutoSR.Activate

    Workbooks.Open Range("C" & …
Run Code Online (Sandbox Code Playgroud)

excel vba

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

在熊猫中允许重复的列

我正在将一个大型CSV(包含股票财务数据)文件拆分为较小的块。CSV文件的格式不同。类似于Excel数据透视表。第一列的前几行包含一些标题。

公司名称,ID等在以下各列中重复。因为一个公司具有多个属性,所以不会像一个公司只有一个列。

在前几行之后,各列开始类似于典型的数据帧,其中标题位于列而不是行中。

无论如何,我要做的是使Pandas允许重复的列标题,而不是让它在标题后添加“ .1”,“。2”,“。3”等。我知道Pandas本身不允许这样做,是否有解决方法?我试图在read_csv上设置header = None,但是它引发了令牌化错误,我认为这是有道理的。我只是想不出一种简单的方法。

在此处输入图片说明

import pandas as pd

csv_path = "C:\\Users\\ThirdHandBD\\Desktop\\Data Splitting\\pd-split\\chunk4.csv"

#df = pd.read_csv(csv_path, header=1, dtype='unicode', sep=';', low_memory=False, error_bad_lines=False)
df = pd.read_csv(csv_path, header = 1, dtype='unicode', sep=';', index_col=False)
print("I read in a dataframe with {} columns and {} rows.".format(
len(df.columns), len(df)
))

filename = 1

#column increment
x = 30 * 59

for column in df:
    loc = df.columns.get_loc(column)
    if loc == (x * filename) + 1:
        y = filename - 1
        a = …
Run Code Online (Sandbox Code Playgroud)

python pandas

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

标签 统计

excel ×1

pandas ×1

python ×1

vba ×1