VB 如何读取 Excel 所有列和行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VB 如何读取 Excel 所有列和行相关的知识,希望对你有一定的参考价值。

以下代码可以读取Excel默认选择的表格:但如何获得表格到底有多少的列数和行数?? Dim ap As Excel.Application
Dim bk As Excel.Workbook
Dim st As Excel.Worksheet
Set ap = CreateObject("Excel.Application")
Set bk = ap.Workbooks.Open("D:\练卡表.xls")'需要读取的表格
Set st = bk.Worksheets(1)'工作表
Rem 求选定区域的起始终止行列()
Dim mTop, mLeft, mRight, mButtom
'st.UsedRange.Select'使用该句可选定D:\try.xls的Sheet1的UsedRange,否则显示其已有的选定区域
mTop = Selection.Row '起始行
mLeft = Selection.Column '起始列
mButtom = mTop + Selection.Rows.Count - 1 '结束行
mRight = mLeft + Selection.Columns.Count - 1 '结束列
MsgBox ("起始行:" & mTop & Chr(13) & "起始列:" & mLeft & Chr(13) & "终止行:" & mButtom & Chr(13) & "终止列:" & mRight)
bk.Close

参考技术A 代码中已经写好了呀:
Selection.Rows.Count '行数
Selection.Columns.Count '列数

即 起始行 + 总行数 - 1 为 结束行,
...

如何使用 PowerShell 或 python 脚本读取、编辑或附加存储在 Azure Blob 存储中的 Excel 文件(列和行)

【中文标题】如何使用 PowerShell 或 python 脚本读取、编辑或附加存储在 Azure Blob 存储中的 Excel 文件(列和行)【英文标题】:How to read then edit or append an Excel Files (columns and rows ) stored in Azure Blob Storage using PowerShell or python script 【发布时间】:2021-12-02 21:28:31 【问题描述】:

我想编写一个 Azure Runbook(Powershell,Python),它将读取 Azure 存储帐户中已经存在的 Excel 文件,并附加那里的数据并将文件保存回存储帐户。

【问题讨论】:

【参考方案1】:

我们可以通过使用 blob_service_client 获取一个 blob 并将数据存储到如下变量中来实现这一点:

blob_client = blob_service_client.get_blob_client(container="newcontainer0805", blob="source.txt")

#SOURCE CONTENTS
content =  blob_client.download_blob().content_as_text

以后我们可以以列的形式添加一些数据,并可以追加:

#INITIALIZE OUTPUT               
output_str = ""
#STORE COULMN HEADERS
data= list()
data.append(list(["column1", "column2", "column3", "column4"]))

下面是完整的代码,我们可以在其中获取 blob 的数据并向其中添加一些内容并将其保存在同一存储帐户内的其他容器 blob 中

import logging
import sys
import os
import azure.functions as func
from azure.storage import blob
from azure.storage.blob import BlobServiceClient, BlobClient, ContainerClient, __version__


def main(myblob: func.InputStream):
    try:
        logging.info(f"Python blob trigger function processed blob \n")
        CONN_STR = "ADD_CON_STR"
        blob_service_client = BlobServiceClient.from_connection_string(CONN_STR)

        # MAP SOURCE FILE
        blob_client = blob_service_client.get_blob_client(container="newcontainer0805", blob="source.txt")

        #SOURCE CONTENTS
        content =  blob_client.download_blob().content_as_text
        
        # WRITE HEADER TO A OUT PUTFILE
        output_file_dest = blob_service_client.get_blob_client(container="target", blob="target.csv")
        
        #INITIALIZE OUTPUT               
        output_str = ""
        
        #STORE COULMN HEADERS
        data= list()
            
        data.append(list(["column1", "column2", "column3", "column4"]))
        output_str += ('"' + '","'.join(data[0]) + '"\n')
        output_file_dest.upload_blob(output_str,overwrite=True)
        logging.info(' END OF FILE UPLOAD')
    except Exception as e:
        template = "An exception of type 0 occurred. Arguments:\n1!r"
        message = template.format(type(e).__name__, e.args)
        print (message)
if __name__ == "__main__":
    main("source.txt")

我们可以根据添加内容的需求修改上面的代码。

【讨论】:

以上是关于VB 如何读取 Excel 所有列和行的主要内容,如果未能解决你的问题,请参考以下文章

用VB如何高效读取EXCEL中所有的sheet名称

当列和行与平面文件不匹配时,如何解决(使用)ETL

打印一个numpy数组的所有列和行[重复]

如何将选定列和行中的DataGridView值插入ListView?

重新排列某些列和行

如何在 Flutter 中将列和行项居中?