Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.06.2010, 22:39   #1
Masha1990
Пользователь
 
Регистрация: 02.06.2010
Сообщений: 32
Печаль Пример матрицы (написать код на VB)

http://www.programmersforum.ru/showthread.php?t=101876
Помогите кто чем может)!!!
Masha1990 вне форума Ответить с цитированием
Старый 02.06.2010, 22:57   #2
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Могу помочь за деньги. Обращайтесь в аську 561986872
motorway вне форума Ответить с цитированием
Старый 02.06.2010, 22:59   #3
Masha1990
Пользователь
 
Регистрация: 02.06.2010
Сообщений: 32
По умолчанию

Цитата:
Могу помочь за деньги. Обращайтесь в аську 561986872
А бесплатно помочь девочке не можеш? Пожалуста
Masha1990 вне форума Ответить с цитированием
Старый 02.06.2010, 23:24   #4
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Вот первая часть:
Код:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For i = 1 To 10
Cells(i, 11).Formula = "=MAX(A" & i & ":J" & i & ")"
Cells(11, i).Formula = "=MAX(" & Chr(64 + i) & "1:" & Chr(64 + i) & "10)"
Next

End Sub
После ввода данных в Экселе в ячейки от A1 до J10 после смены выделенной ячейки (или можно это реализовать как отдельный макрос) в ячейках K1:K10 и A11:J11 появятся соответствующие максимальные значения по строкам и столбцам
motorway вне форума Ответить с цитированием
Старый 02.06.2010, 23:38   #5
Masha1990
Пользователь
 
Регистрация: 02.06.2010
Сообщений: 32
По умолчанию

Цитата:
Вот первая часть:
Код:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For i = 1 To 10
Cells(i, 11).Formula = "=MAX(A" & i & ":J" & i & ")"
Cells(11, i).Formula = "=MAX(" & Chr(64 + i) & "1:" & Chr(64 + i) & "10)"
Next

End Sub
После ввода данных в Экселе в ячейки от A1 до J10 после смены выделенной ячейки (или можно это реализовать как отдельный макрос) в ячейках K1:K10 и A11:J11 появятся соответствующие максимальные значения по строкам и столбцам
Можеш если не сложно написать весь код программы. Мне нужен токо код)
Masha1990 вне форума Ответить с цитированием
Старый 02.06.2010, 23:42   #6
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

По сути, это и есть код для первой части. Предполагается, что ввод данных производится в Экселе вручную. Вторую часть, может, еще кто-нибудь сделает
motorway вне форума Ответить с цитированием
Старый 02.06.2010, 23:51   #7
Masha1990
Пользователь
 
Регистрация: 02.06.2010
Сообщений: 32
По умолчанию

Цитата:
По сути, это и есть код для первой части. Предполагается, что ввод данных производится в Экселе вручную. Вторую часть, может, еще кто-нибудь сделает
Спасибо большое за первую часть.Сонце ну пожалуста зделай вторую частьб просто завтра здавать)
Masha1990 вне форума Ответить с цитированием
Старый 03.06.2010, 00:21   #8
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Немного первую изменил, добавил добавление данных в колонку справа под литерой M, чтобы потом сортировать.

Код сортировки уже чисто экселовский, не знаю, насколько это у вас там примут...

Код:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For i = 1 To 10
Cells(i, 11).Formula = "=MAX(A" & i & ":J" & i & ")"
Cells(11, i).Formula = "=MAX(" & Chr(64 + i) & "1:" & Chr(64 + i) & "10)"
Cells(i, 13).Value = Cells(i, 11).Value
Cells(i + 10, 13).Value = Cells(11, i).Value
Next i

   Range("M1:M20").Select
    ActiveWorkbook.Worksheets("Лист1").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Лист1").Sort.SortFields.Add Key:=Range("M1"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Лист1").Sort
        .SetRange Range("M1:M20")
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With


Dim b(1 To 5) As Variant
For j = 1 To 5
b(j) = Cells(j, 13).Value
Next j

End Sub
Короче, все это работает, но удовлетворяет ли вашим требованиям, не знаю и знать не могу

Последний раз редактировалось motorway; 03.06.2010 в 00:25.
motorway вне форума Ответить с цитированием
Старый 03.06.2010, 00:22   #9
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Второе сообщение случайно добавилось... в общем, все это работает в Экселе, используется VBA
motorway вне форума Ответить с цитированием
Старый 03.06.2010, 00:35   #10
Masha1990
Пользователь
 
Регистрация: 02.06.2010
Сообщений: 32
По умолчанию

Цитата:
motorway
Спасиба большое Солнце)
Выручил, очень благодарна!!!
Masha1990 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пример матрицы (VB) Masha1990 Помощь студентам 1 03.06.2010 21:08
написать программу матрицы в delphi ilnar Помощь студентам 9 18.01.2010 16:58
Написать код макроса Trimbl Microsoft Office Excel 2 15.10.2009 03:51
Помогите написать код burnand123 Фриланс 2 16.07.2009 19:06
Нужно написать программу....файлы...матрицы Calfa Паскаль, Turbo Pascal, PascalABC.NET 24 06.05.2009 21:04