Столбцы / строки таблицы VBA конвертируют и меняют валюту - PullRequest
0 голосов
/ 17 мая 2011

У меня есть назначение в VBA, где я должен преобразовать строки существующей таблицы в столбцы, но мне нужно только показать две строки из таблицы, и все это должно быть сделано с помощью кнопки управления ActiveX. Я также должен изменить значения ячеек таблицы на евро и вернуться к эстонским кронам с помощью кнопки. В-третьих, я должен найти стоимость и цену в соответствии с новой таблицей.

Я уже написал столько кода, сколько мог, но он работает неправильно. Есть несколько проблем: а) во-первых, после нажатия кнопки решения он не выдает все значения в новой таблице, б) во-вторых, когда я пытаюсь использовать кнопки изменения валюты евро / кроны, он умножает мои значения бесконечно в-третьих, я не получаю правильного ответа, когда мне нужно найти самое дешевое название SMS-пакета и цену.

Полагаю, мое объяснение было очень грязным, поэтому я добавляю файл Excel, который можно увидеть здесь: http://www.2shared.com/file/awEG5hf-/KT_online.html

Код действительно длинный, поэтому я не хочу добавлять его сюда, но изображение из назначения выглядит следующим образом: enter image description here это изображение показывает правильное решение назначения.

Я действительно, очень ценю, если кто-нибудь найдет время, чтобы помочь мне. Огромное спасибо.

1 Ответ

1 голос
/ 18 мая 2011

Попробуйте изменить следующие подпрограммы

ЛИСТ1

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

МОДУЛЬ1

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

МОДУЛЬ2

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

МОДУЛЬ3

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...