我在下面创建了一个示例表,它非常类似于模拟我面临的情况。我需要一个excel vba代码或者可以使用公式来完成吗? 当前表
using System.Data.Entity;
public static IEnumerable<Categoria> GetCategories()
{
using (var db = new PresupuestoContext())
{
var query = (from b in db.Categorias
orderby b.Nombre
select b)
.Include(p => p.SubCategorias)
.ToList();
return query;
}
}
需要的结果
column1 |
------------
A |
A |
A |
B |
B |
C |
D |
D |
答案 0 :(得分:1)
公式方法
=IF(ISODD(ROW(A1)),INDEX(A:A,CEILING(ROW(A1)/2,1)),"go")
根据需要向下复制。然后,您可以复制生成的列并使用Paste Special&gt;将其粘贴到自身上。值,然后删除原始列。
解释:从里到外阅读公式。 Row(A1)
将返回数字1.除以2,返回0.5,使用Ceiling返回下一个完整整数,即1.复制到第3行,例如,Row(A3)
返回3,除以2 = 1.5,向上舍入到下一个完整整数返回2.
因此,在第1行中,公式计算为Index(A:A,1)
,这意味着“返回范围A:A中的第一个单元格”。在第3行中,公式计算为Index(A:A,2)
,这意味着 - 你得到了它!在第5行,我们将获得Index(A:A,3)
,依此类推。
通过“公式”功能区上的“评估公式”工具运行公式,以查看逐步执行的这些操作。