Модераторы: Poseidon

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [VBA] матрица, поиск по цифре 
:(
    Опции темы
Гость_Vitek
Дата 16.11.2005, 03:22 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Вечер добрый, господа!
Помогите пожалуйста с Visual Basic. Мне нужно вывести все столбцы матрицы, в которых есть хотя бы один ноль.
Что-то мне подсказывает, что это элементарно, но почему то у меня не получается. =(

Заранее спасибо!

________________
С уважением,
Виктор.
  Вверх
Alexandr87
Дата 16.11.2005, 05:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


дыкий псых
***


Профиль
Группа: Завсегдатай
Сообщений: 1459
Регистрация: 27.11.2004
Где: Алматы, Казахстан

Репутация: 1
Всего: 39



Код

Option Explicit

Private Sub CommandButton1_Click()
Dim row As Integer
row = 3 'Kol-vo strok
Dim col As Integer
col = 3 'Kol-vo stolbov
Dim number As String
Dim x, y As Integer


For x = 1 To col
    For y = 1 To row
        If (Cells(y, x) = 0) Then
            number = number & x & " "
            Exit For
        End If
    Next y
Next x
MsgBox (number)

End Sub

PM Jabber   Вверх
cardinal
Дата 16.11.2005, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



А вообще тут
http://forum.vingrad.ru/index.php?act=Sear...%F2%F0%E8%F6%E0
много всего про матрицы


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Guest
Дата 16.11.2005, 21:02 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Alexandr87, спасибо большое! А не могли бы Вы объяснить мне поподробней вот эти 4 строки:

Код

For x = 1 To col
    For y = 1 To row
        If (Cells(y, x) = 0) Then
            number = number & x & " "


Что там происходит?

Еще раз спасибо!

___________________
С уважением,
Виктор.
  Вверх
Guest
Дата 16.11.2005, 21:11 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Ой, и еще начало не очень понятно:

Код

Option Explicit

Private Sub CommandButton1_Click()


Что значит "CommandButton1_Click()" ?

А "Option Explicit" типа определяет, можно ли неявно объявить локальные переменные, да?

___________________
С уважением,
Виктор.
  Вверх
Staruha
Дата 16.11.2005, 22:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1292
Регистрация: 1.2.2004
Где: Казань

Репутация: нет
Всего: 27




For x = 1 To col - идем по столбцам,их три

For y = 1 To row - идем по строкам

If (Cells(y, x) = 0) Then - И если находим
number = number & x & " " - получаем Номер столбца
То бишь заходим в первый столбец и проверяем строки.Идем во второй столбец

Private Sub CommandButton1_Click() -Объявляем процедуру нажатия кнопки с именем CommandButton1. Можно назвать Кнопка и тогда будет

Private Sub Кнопка_Click()






--------------------
Возмездие настигнет
PM MAIL   Вверх
Guest
Дата 16.11.2005, 22:56 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Alexandr87, cardinal, Staruha, всем большое спасибо! Вы меня очень выручили! Весьма благодарен!

______________
С уважением,
Виктор.
  Вверх
Guest
Дата 22.11.2005, 15:11 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Эх, не прокатила прога. =(
Преподаватель сказал надо кое-что переделать... Сказал, что надо описать строки и столбцы(типа размер матрицы). То есть не конкретно 3 на 3, а вот, например, если матрица будет 20 на 20, то ее же будет не легко заполнить...(я так понял, что он имел ввиду, чтобы программа искала нули в любой матрице, какая бы размерность у нее не была...наверно так) Помогите переделать пожалуйста!
дал еще вот такую штуку, сказал, что можно с помощью нее сделать...

Код

Sub EntRand(n as integer, m as integer)
For i = 1 To n
For j = 1 To m
Cells(i,j)=Fix(100*Rand)
next i
next j
End Sub 


Помогите плиз!

_________________
С уважением,
Виктор.
  Вверх
Staruha
Дата 22.11.2005, 21:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1292
Регистрация: 1.2.2004
Где: Казань

Репутация: нет
Всего: 27



smile Я так пологаю надо найти последнюю строку и последний столбец (Column.Count. Способов навалом) это будет n и m


--------------------
Возмездие настигнет
PM MAIL   Вверх
Guest
Дата 22.11.2005, 22:34 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Staruha, а что он нам дал? что там написанно? что это значит? =)
Я вот про это:

Код

Sub EntRand(n as integer, m as integer)
For i = 1 To n
For j = 1 To m
Cells(i,j)=Fix(100*Rand)
next i
next j
End Sub 


________________
С уважение,
Виктор.
  Вверх
cardinal
Дата 23.11.2005, 02:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



Guest, ты бы еще код выделял как VB код, а не как C++. Попробуй вот так:
Код

Option Explicit

Const col = 99 'Kol-vo stolbov
Const row = 58 'Kol-vo strok
Dim Cells(1 To row, 1 To col) As Integer

Private Sub Command1_Click()
Dim x, y As Integer
Dim number As String

EntRand row, col

For x = 1 To col
    For y = 1 To row
        If (Cells(y, x) = 0) Then
            number = number & x & " "
            Exit For
        End If
    Next y
Next x


MsgBox (number)

End Sub

Sub EntRand(n As Integer, m As Integer)
Dim i As Integer
Dim j As Integer

For i = 1 To n
    For j = 1 To m
        Cells(i, j) = Fix(100 * Rnd())
    Next j
Next i
End Sub

Проверять особо некогда, но вроде все правильно...
Цитата(Guest @ 22.11.2005, 20:34)
а что он нам дал? что там написанно?

Заполнение матрицы случ. числами...


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Staruha
Дата 23.11.2005, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1292
Регистрация: 1.2.2004
Где: Казань

Репутация: нет
Всего: 27



Цитата
Staruha, а что он нам дал? что там написанно? что это значит? =)


Sub EntRand(n as integer, m as integer)- Макрос ,в скобках объявлены две числовые переменные n и m
For i = 1 To n '- n - колич.строк
For j = 1 To m '- m - столбцов
Cells(i,j)=Fix(100*Rand) - ' Rand - случайное число ,т.е. - программа поставит число ,как если бы ты кубик кинул
next i
next j
End Sub




--------------------
Возмездие настигнет
PM MAIL   Вверх
Guest
Дата 28.11.2005, 11:30 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











а как сделать неограниченное количество столбцов и строк?
  Вверх
cardinal
Дата 28.11.2005, 12:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



А компер у тебя что резиновый? smile

Что значит неограниченный?


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Guest
Дата 28.11.2005, 17:52 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Что значит неограниченный?[/quote]

не знаю. а почему именно 99 столбцов и 58 строк? может есть какая-нибудь общая схема записи размерности матрици, не знаете?
  Вверх
Guest
Дата 28.11.2005, 18:03 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











точнее не так!
мне сказали, что я могу вот это оставить:
Код

Option Explicit

Private Sub CommandButton1_Click()
Dim row As Integer
row = 3 'Kol-vo strok
Dim col As Integer
col = 3 'Kol-vo stolbov
Dim number As String
Dim x, y As Integer


For x = 1 To col
    For y = 1 To row
        If (Cells(y, x) = 0) Then
            number = number & x & " "
            Exit For
        End If
    Next y
Next x
MsgBox (number)

End Sub


Но к этому надо еще приделать автозаполнение...
  Вверх
cardinal
Дата 28.11.2005, 18:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



Цитата(Guest @ 28.11.2005, 15:52)
может есть какая-нибудь общая схема записи размерности матрици, не знаете?

То есть чтобы ты мог по ходу программы указать определенный размер или как?

Ну так вот тебе автозаполнение smile
Код

Option Explicit

Private Sub CommandButton1_Click()
Dim row As Integer
row = 3 'Kol-vo strok
Dim col As Integer
col = 3 'Kol-vo stolbov
Dim number As String
Dim x, y As Integer


For x = 1 To col
    For y = 1 To row
        Cells(y, x) = Fix(100 * Rnd()) ' автозаполнение
        If (Cells(y, x) = 0) Then
            number = number & x & " "
            Exit For
        End If
    Next y
Next x
MsgBox (number)

End Sub 

Ставь в след. раз правильные теги (code = vb)!


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Guest
Дата 28.11.2005, 19:24 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











[/quote]То есть чтобы ты мог по ходу программы указать определенный размер или как?
Цитата


Да, да, да, именно это я и мел ввиду. =))))) можно так сделать(теоретически)?

Ну так вот тебе автозаполнение[quote]

О да, кажется, это то, что нужно! Завтра информатика в инсте... буду попробовать еще раз сдать...=))))
  Вверх
Guest
Дата 29.11.2005, 15:07 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Эх, опять не прокатила прога! =(
В этот раз сказали, что еще меню нужно сделать.
Меня должно быть таким:
нажимаешь единицу - а там должно быть два подменю: предлагается ввсети матрицу вручную или автозаполнение.
нажимаешь двойку - выводится результат, то есть номера столбцов, в которых есть хотя бы один ноль.
любая другая кнопка - выход.
И опять дал что-то типа шаблона, сказал, что надо по образу и подобию cделать...

Код

Sub main()
Dim n as integer, m as integer
while 1
resp=inputbox("1- ... , 2-..... , 3-..... , other - Quit")
Select case resp
n=inputbox("N=")
m=inputbox("M=")
Case 2 
resp=inputbox("1-случайно, 2-самим")
Select case resp
case 1
call entrand(n,m)
case 2
call entself(n,m)
end select
case 3
call diag(n,m)
case else
range(cells(1,1), cells(n,m)).clear
msgbox("Game Is Over")
Exit sub

  Вверх
cardinal
Дата 29.11.2005, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



Ну так в чем проблема? Садись, разбирайся, задавай конкретные вопросы или опять все влом? smile


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Guest
Дата 29.11.2005, 23:33 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Ну не совсем то, чтобы в лом, просто это не для моих мозгов. smile

cardinal, вот вы как вообще считаете, это сложное задание мне дали? По мне, так очень сложное! Мне говорили, что такие задания дают тем, кто учится на програмистов. А я учусь на гуманитарном факультете! smile И нам дают то же самое, жуть! Хотя когда я поступал, нам говорили, что вся наша информатика будет заключаться в работе с "майкрософт ворд"... Во как нас жестоко обманули! smile Ну да ладно. Я, кстате, уже один семестр продержался и только благодаря этому форому и добрым его пользователям! smile Мы тогда помнится C++ проходили... это было не легко, но общими усилиями... smile

Так вот, переходя к программе smile
Я ее кстате немного подкоректировал(это все, что я сам смог сделать) smile
Я убрад Exit For, а то она каждый раз как встретит ноль заканчивает писать цифры после него в данном столбце и еще добавил очищение range(cells(1,1), cells(row,col)).clear
Вот, а сделать меню я сам не смогу. Меня терзают смутные сомнения, что если меню будет предлагать помимо автозаполнения заполнить вручную, то это будет надо менять что-то в главной проге, что-то переделывать, описывать...хотя, может я и ошибаюсь. Вывод такой: нужна помощь! smile
  Вверх
cardinal
Дата 30.11.2005, 02:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



Цитата(Guest @ 29.11.2005, 21:33)
Мне говорили, что такие задания дают тем, кто учится на програмистов.

Хм... хм... ну дают. После первой лекции. smile А потом начинаются разные ужастики smile, которые с этим всем не сравнить!
Цитата(Guest @ 29.11.2005, 21:33)
вот вы

Можно на "ты". Мы тут все свои. smile
Ладно, держи...
Код

Dim Cells() As Integer

Sub Main()
On Error GoTo x
Dim n As Integer
Dim m As Integer
Dim resp As Integer
While 1
    resp = InputBox("1-размеры, 2-заполнение , 3-диагноз , other - Quit")
    Select Case resp
    Case 1
        n = InputBox("N=")
        m = InputBox("M=")
        ReDim Cells(n, m)
    Case 2
        resp = InputBox("1-случайно, 2-самим, other - случайно")
        Select Case resp
        Case 1
            Call entrand(n, m)
        Case 2
            Call entself(n, m)
        Case Else
            Call entrand(n, m)
        End Select
    Case 3
        Call diag(n, m)
    Case Else
        Call clear(n, m)
        MsgBox ("Game Is Over")
        Exit Sub
    End Select
Wend
x:
Exit Sub
End Sub

Sub clear(n As Integer, m As Integer)
Dim x, y As Integer

For x = 1 To n
    For y = 1 To m
        Cells(x, y) = 0 ' обнуляешь
    Next y
Next x
End Sub

Sub entself(n As Integer, m As Integer)
Dim x, y As Integer

For x = 1 To n
    For y = 1 To m
        Cells(x, y) = InputBox("(" & CStr(x) & " " & CStr(y) & ") = ") ' заполняешь сам
    Next y
Next x
End Sub

Sub entrand(n As Integer, m As Integer)
Dim x, y As Integer
For x = 1 To n
    For y = 1 To m
        Cells(x, y) = Fix(100 * Rnd()) ' автозаполнение
    Next y
Next x
End Sub

Sub diag(n As Integer, m As Integer)
Dim x, y As Integer
Dim number As String
For x = 1 To n
    For y = 1 To m
        If (Cells(x, y) = 0) Then
            number = number & x & " "
            Exit For
        End If
    Next y
Next x
MsgBox (number)
End Sub

Не забудь, что все это в модуль надо засунуть.

Успехов!


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Guest
Дата 30.11.2005, 08:43 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











ой, а она теперь ищет не столбцы с нулями, а строки... что-то наверно перепуталось...
  Вверх
cardinal
Дата 30.11.2005, 17:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



Наверно... smile Лень проверять было... Сегодня вечером посмотрю.


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Guest
Дата 30.11.2005, 19:03 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











оки smile
  Вверх
cardinal
Дата 1.12.2005, 03:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



Вот попробуй:
Код

Dim Cells() As Integer

Sub Main()
On Error GoTo x
Dim n As Integer
Dim m As Integer
Dim resp As Integer
While 1
    resp = InputBox("1-размеры, 2-заполнение , 3-диагноз , other - Quit")
    Select Case resp
    Case 1
        n = InputBox("N=")
        m = InputBox("M=")
        ReDim Cells(n, m)
    Case 2
        resp = InputBox("1-случайно, 2-самим, other - случайно")
        Select Case resp
        Case 1
            Call entrand(n, m)
        Case 2
            Call entself(n, m)
        Case Else
            Call entrand(n, m)
        End Select
    Case 3
        Call diag(n, m)
    Case Else
        Call clear(n, m)
        MsgBox ("Game Is Over")
        Exit Sub
    End Select
Wend
x:
Exit Sub
End Sub

Sub clear(n As Integer, m As Integer)
Dim x, y As Integer

For x = 1 To n
    For y = 1 To m
        Cells(x, y) = 0 ' обнуляешь
    Next y
Next x
End Sub

Sub entself(n As Integer, m As Integer)
Dim x, y As Integer

For x = 1 To n
    For y = 1 To m
        Cells(x, y) = InputBox("(" & CStr(x) & " " & CStr(y) & ") = ") ' заполняешь сам
    Next y
Next x
End Sub

Sub entrand(n As Integer, m As Integer)
Dim x, y As Integer
For x = 1 To n
    For y = 1 To m
        Cells(x, y) = Fix(100 * Rnd()) ' автозаполнение
    Next y
Next x
End Sub
Sub diag(n As Integer, m As Integer)
Dim x, y As Integer
Dim number As String
For x = 1 To n ' строки
    For y = 1 To m ' столбцы
        If (Cells(x, y) = 0) And InStr(number, y) = 0 Then
            number = number & y & " "
            Exit For
        End If
    Next y
Next x
MsgBox (number)
End Sub

Делал на скорую руку, так что улучшай если надо сам… Проверял пару раз. smile



--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Guest
Дата 4.12.2005, 17:29 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Круто, работает! =) Спасибо большое! А можно еще вопросик?
А как сделать визуальную форму, реализующую эту программу(программа выводит все столбцы матрицы, в которых есть хотя бы один ноль), а так же сохранение и загрузку исходной матрицы и модифицированной?
  Вверх
cardinal
Дата 4.12.2005, 21:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



Ну как, как. Взять у кого-нибудь книгу (если покупать нет смысла), прочитать страниц двадцать-тридцать и все сделать.


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Guest
Дата 5.12.2005, 15:06 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











никто не дает книгу! говорят самим надо...=)))))))
Ну а это вообще очень сложно?
  Вверх
cardinal
Дата 5.12.2005, 18:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99





--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Guest
Дата 6.12.2005, 01:01 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











ого smile
да уж, ну и дела, темный лес! smile
  Вверх
Guest
Дата 6.12.2005, 15:08 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











cardinal, Прога классная! Я ее сдал на "4"! Огромное спасибо! Ты меня очень выручил! С меня должок! =)

А можно последние несколько вопросов? smile
Можно мне объяснить вот эти три момента:

1) что это значит?
Код

On Error GoTo x


2) что означает "х:"?
Код

Wend
x:


3)А вот здесь совсем ничего не понятно! Что такое "number", что этот "number" означает? Что тут происходит в первой строке? Мы что, проверяем ноль на то действительно ли это ноль?
Код

If (Cells(x, y) = 0) And InStr(number, y) = 0 Then
number = number & y & " "

  Вверх
cardinal
Дата 6.12.2005, 23:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



1. означает, что при возникновении ошибки надо GoTo x.
2. x: это и есть то самое место куда ты попадешь если введешь какой-нибудь бред или не то нажмешь.
3. проверяем равно ли Cells(x, y) нулю и есть ли такой столбик у нас или нет (если есть, то нафига нам его еще раз в диагностике выдавать?).


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Guest
Дата 6.12.2005, 23:44 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











дык а number - это что?
  Вверх
cardinal
Дата 7.12.2005, 00:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 15
Всего: 99



Это строка, которую ты в итоге получишь при диагностике в
Код

MsgBox (number)

В строке номера столбцов.


--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.1751 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.