我在VBA中有一个赋值,我必须将现有表的行转换为列,但我只需要从表中显示两行,所有这些都必须在ActiveX控件按钮的帮助下完成。我还必须在一个按钮的帮助下将表格单元格值更改为欧元并返回到爱沙尼亚克朗。第三,我必须根据新表找到它的价值和价格。
我已尽可能多地编写代码,但它无法正常工作。有一些问题:a)首先,在按下求解按钮后,它没有给出新表中的所有值,b)其次,当我尝试使用货币更改按钮Euros / Kroons时,它会无限地乘以我的值第三,当我必须找到最便宜的短信包名称及其价格时,我得不到正确答案。
我想我的解释非常混乱,所以我在这里添加可以看到的Excel文件:http://www.2shared.com/file/awEG5hf-/KT_online.html
代码很长,所以我不想在这里添加它,但是赋值中的图像如下所示:该图像显示了正确的赋值解决方案。
如果有人能抽出时间帮助我,我真的很感激。非常感谢你。
答案 0 :(得分:1)
尝试更改以下潜艇
SHEET1
Private Sub CommandButton1_Click()
If Sheet1.Range("E6").Value = "Prices in Euros" Or Sheet1.Range("E6").Value = "" Then eek
End Sub
Private Sub CommandButton2_Click()
If Sheet1.Range("E6").Value = "Prices in Kroons" Or Sheet1.Range("E6").Value = "" Then eur
End Sub
Private Sub CommandButton3_Click()
lahenda
End Sub
MODULE1
Sub lahenda()
With Sheet1
.Range("B8:B16,F8:F16").Copy
.Range("B18:J19").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=True
.Range("C23").Formula = "=MIN(H9:H16)"
.Range("C24").Formula = "=INDEX(B9:B16,MATCH(minhind,H9:H16,0),1)"
End With
End Sub
MODULE2
Sub eur()
Dim prk As Range, hinnad As Range, koht1
Dim n, m
Set prk = Range("alg").CurrentRegion
n = prk.Rows.Count - 1
m = prk.Columns.Count - 1
Set hinnad = prk.Offset(1, 1).Resize(n, m)
Set koht1 = prk.Cells(2, 2)
ReDim a(1 To n, 1 To m), paketid(1 To n), naitajad(1 To m)
ReDim veerg(1 To n), rida(1 To m)
ReDim b(1 To n, 1 To m)
a = hinnad
kurss = Range("kurss")
tee_tabel a(), n, m, b(), kurss
tabel_lehele b(), n, m, koht1
Sheet1.Range("E6").Value = "Prices in Euros"
End Sub
单词数
Sub eek()
Dim prk As Range, hinnad As Range, koht1 As Range
Dim n, m
Set prk = Range("alg").CurrentRegion
n = prk.Rows.Count - 1
m = prk.Columns.Count - 1
Set hinnad = prk.Offset(1, 1).Resize(n, m)
Set koht1 = prk.Cells(2, 2)
ReDim a(1 To n, 1 To m), paketid(1 To n), naitajad(1 To m)
ReDim veerg(1 To n), rida(1 To m)
ReDim b(1 To n, 1 To m)
a = hinnad
kurss = Range("kurss")
tee_tabel a(), n, m, b(), kurss
tabel_lehele b(), n, m, koht1
Sheet1.Range("E6").Value = "Prices in Kroons"
End Sub