EXCEL的vba问题太多了!达人请进

[复制链接]
查看11 | 回复4 | 2009-6-14 22:27:25 | 显示全部楼层 |阅读模式
不难,录一个宏即可,等下我发代码,如果你有代码,请发上来 宏代码(没有调试合并单元格情况,只能简单单列(行)转置):Dim MyClip As New CClipboardSub Macro1()
Dim a() As String
Dim TempStr As String
TempStr = MyClip.GetText()
a() = Split(TempStr, Chr(13))
a() = Split(a(0), Chr(9))
Dim TempCol As Integer
Dim TempRow As Intege...
回复

使用道具 举报

千问 | 2009-6-14 22:27:25 | 显示全部楼层
代码可以更简单。根据你的要求,这样代码就更简单了。设原数据在Sheets(1)第m列 从 第a行到第b行需要复制到Sheets(2)的第n行,从第c列开始。Sub aaa()k=0for I=a to bSheets(2).Cells(n, I+k+c-a) = Sheets(1).Cells(I, m)k=k+1ne...
回复

使用道具 举报

千问 | 2009-6-14 22:27:25 | 显示全部楼层
假设表一的数据在A列,你可以尝试在表二任意一个单元格输入如下公式再往右填充:=IF(MOD(COLUMN(A1),2)=0,"",INDIRECT("Sheet1!$A"&INT(COLUMN(A1)/2)+MOD(COLUMN(A1),2))+0) 已根据楼主要求修改,其中Sheet1!$A最后一个字母决定转换哪一列。+0决定从第1行开始,+1就从...
回复

使用道具 举报

千问 | 2009-6-14 22:27:25 | 显示全部楼层
用不着这么复杂吧,给你一个最简单的代码Sub 转换()'从表一复制到表二b = 1c = 0For a = 1 To 600If c = 2 Thenc = 0GoTo nElseSheets(2).Cells(1, a) = Sheets(1).Cells(b, 1)b = b + 1End Ifc = ...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行