Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи на Visual Basic (VB).

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61

Открыть новую тему     Написать ответ в эту тему

NEOMATRIX



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору


Данный топик предназначен только для обсуждения типовых задач на Visual Basic.
Обсуждение задач на VBA (а именно, Excel, Word, Access) строго запрещено!
Пишите в соответствующих топиках.

 
Родственные топики:
  • Excel VBA - часть 1, часть 2 - все вопросы по Excel VBA туда
  • Word VBA все вопросы по Word VBA туда
  • Access все вопросы по программированию в Access туда
  • VBScript - программирование "удобняшек" на VBScript
  • QBasic - типовые задачи на QBasic
     
  • Date Time Functions In Visual Basic
  • VB6's Trig, Math, Financial, Boolean, and Random functions
  • Visual Basic 6 String Functions
  • VB6 Number System Functions (Hex, Oct, Etc)
  • VB6's DateAdd function
     
  • Functions (Visual Basic)
  • Keywords and Members by Task
  • Visual Basic Reference
     
  • Visual Basic String Manipulation Tutorials
     
  • Top 10 Visual Basic Sins

     
    Учебники:
    Visual Basic для студентов и школьников. Культин Н. (2010)
    Занимательное программирование на Visual Basic.NET. Климов А. (2005)
    Visual Basic в задачах и примерах. Сафронов (2009)
    Visual Basic 2012 на примерах. Зиборов В. (2012)

  • Всего записей: 202 | Зарегистр. 29-12-2004 | Отправлено: 19:30 16-11-2005 | Исправлено: XPerformer, 10:07 28-10-2014
    Kaba4ok

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Привет Всем. Смиренно прощу о помощи Великих Программеров решить задачки.
     
    1)Даны: Натуральное число n, действительные числа a0, a1,..., an. Вычислить последовательность а1+1!, а2+2!, an+n!.
     
    2) Дана матрица натуральных чисел X(n,m). Упорядочить строки матрицы по возрастанию суммы цифр в десятичной системе счисления, используемых для записи элементов строки.
     
    Заранее благодарю за помощь.

    Всего записей: 4 | Зарегистр. 10-11-2007 | Отправлено: 17:14 10-11-2007 | Исправлено: Kaba4ok, 19:01 10-11-2007
    Lost_Firefly

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Добрый всем вечер!
    Помогите, пожалуйста, решить две задачки!
    Сдать надо уже в понедельник, а я в VB ничего не понимаю... То есть ненмого понимаю.. Не совсем по специальности...
    заранее спаисбо )
     
     
    Задача 1.
    1. Добавьте на форму Взрыв (frmBomb) объекты: lblInfrom, imgBomb, imgFire.
    Разрешите для перетаскивания для imgFire и добавьте рисунок спички в свойство (рисунок перетаскивания)
    2. Объявите переменную счетчика k как целое число в разделе объявления переменных.  
    3. Для событий сброс объекта на бомбу запрограммируйте:
    - бросаемый объект (Source) становится невидимым;
    - рисунок бомбы изменяется на bomb1.jpg
    - запускается таймер tmr1;
    - k=5
    4. Для процедуры таймер 1 tmr1 сделайте проверку значения переменной k,
    Если k >= 1, тогда в надписи появляется значение k,
    Иначе:
    - исчезает рисунок бомбы,
    - появляется красная надпись ВООМ!;
    - цвет фона становится синим,
    Отключается таймер 1 и запускается таймер 2.
    5. Запрограммируйте таймер 1.
    - исчезновение надписи
    - появление рисунка облака точно по центру;
    - если облако не достигло верхней границы формы – передвижение облака вверх и вправо на 50 единиц относительно предыдущего;
    Иначе:
    - таймер 2 отключается;
    - облако исчезнет;
    - с краю формы появляется надпись «КОНЕЦ»
     
    Задача 2:
    Создайте анимации полета шмеля, при нажатии кнопки Старт.

    Всего записей: 1 | Зарегистр. 10-11-2007 | Отправлено: 21:21 10-11-2007
    Tanya3000

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Здрасвстуйте!  
    Помогите пожалуйста на Vba: вывести слово с номером K заданного предложения.  
    Заранее спасибо!

    Всего записей: 13 | Зарегистр. 11-11-2007 | Отправлено: 22:51 11-11-2007
    Smirnov007

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    У меня есть маленькая проблема.

    Код:
    input x$
    if x$ = a then print 1

    Но текстовая переменная не может быть равна другой текстовой.
    Задумка была такая я нумерую все буквы алфавита. Появляется "введите слово". Я ввожу слово. Появляется набор чисел - "Шифр".
    Пример:
    Введите слово: abc
    Шифр: 123

    Всего записей: 3 | Зарегистр. 19-07-2007 | Отправлено: 00:26 13-11-2007 | Исправлено: Smirnov007, 00:32 13-11-2007
    kpblc

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Код:
    Sub query()
    Dim strValue As String
    Dim res As Integer
        strValue = InputBox("value")
        Select Case LCase(strValue)
            Case "a"
                res = 1
            Case "b"
                res = 2
            Case "c"
                res = 3
        End Select
        Debug.Print strValue & " : " & CStr(res)
    End Sub

    Подробнее...

    Всего записей: 714 | Зарегистр. 08-08-2003 | Отправлено: 02:21 13-11-2007 | Исправлено: kpblc, 02:34 13-11-2007
    SAS888

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Tanya3000

    Цитата:
    вывести слово с номером K заданного предложения.  
    Заранее спасибо!

    Например, решение с помощью функции:
     
    Function Substring(Txt, Delimiter, n) As String
        Dim x As Variant
        x = Split(Txt, Delimiter)
        If n > 0 And n - 1 <= UBound(x) Then
            Substring = x(n - 1)
        Else
            Substring = ""
        End If
    End Function
     
    Задаем ячейку, содержащую текст, разделитель  и номер нужного слова.
    Если функция не нужна - используй в своем коде VBA.
     
    Добавлено:
    Smirnov007

    Цитата:
    Введите слово: abc
    Шифр: 123

    Можно проще:
     
    Sub CodeStr()
        Dim x As String
        Dim Cod As String
        x = InputBox("Value")
        For i = 1 To Len(x)
           Cod = Cod & (Asc(Right(Left(x, i), 1)) - 96)
        Next i
        MsgBox "Шифр = " & Cod
    End Sub
     
    Здесь, конечно, в полном соответствии порядку будут только строчные буквы латинского алфавита. Если надо, можно вставить проверку. Только не известно как тогда "нумеровать" алфавит.

    Всего записей: 398 | Зарегистр. 31-10-2007 | Отправлено: 08:34 13-11-2007
    Smirnov007

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Можно проще

    Хех... Как бы сказать чтобы меня не ругали: Мне бы это на QBaisic, понимаю что не тот язык, но язык то простой. У меня как я говорил две проблемы:
    1) input x
    if x=1 then print "a"
    if x=2 then print "b"
    Ввожу "1" выдет "а", но когда ввожу "12" то он мне "ab" не выдает
    2) Буквы из чисел как вы видите из первого пункта делать могу, но как превратить буквы в числа если переменная не хочет присваивать себе буквенные значения

    Всего записей: 3 | Зарегистр. 19-07-2007 | Отправлено: 15:31 13-11-2007
    kpblc

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Я не знаю qbasic, но неужели там нет функций Left и Right?
    Потом, попробуй все же сравнивать, к примеру, так:

    Код:
    input x
    For Counter=0 to len(x)
    y=left(right(x,Counter+1),1)
    select case y
     case "1"
        print "a"
      case "2"
        print "b"
    end select
    next Counter

    Всего записей: 714 | Зарегистр. 08-08-2003 | Отправлено: 16:27 13-11-2007
    Smirnov007

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    попробуй все же сравнивать

    Спасибо помогло. Сообщения нормально шифруются. Я просто делаю проект по криптографии. Вот находу учусь программированию.

    Всего записей: 3 | Зарегистр. 19-07-2007 | Отправлено: 17:34 13-11-2007
    Tanya3000

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    вывести слово с номером K заданного предложения.    
     
    SAS888 я не поняла ваше решение, через функцию это не то. Там надо пробелы считать...

    Всего записей: 13 | Зарегистр. 11-11-2007 | Отправлено: 22:13 13-11-2007
    Beldesign

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Привет всем! Подскажите направление решения такой задачи на vb для exell необходим макрос который выдает список фалов из определенной папки и вставляет их в столбец в exell документ. Заранее благодарен!




    в топик по Excel VBA

    Всего записей: 7 | Зарегистр. 28-08-2006 | Отправлено: 02:51 14-11-2007 | Исправлено: ShIvADeSt, 07:58 15-11-2007
    SAS888

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Tanya3000

    Цитата:
    я не поняла ваше решение, через функцию это не то. Там надо пробелы считать...

     
    Объявляем функцию. Далее используем ее в своем коде:
     
    Sub qq()
        Txt = Application.Trim(Range("A1")) 'ячейка,содержащая текст (или строковая переменная)
        Delimiter = " " 'разделитель
        n = 4 'номер слова в предложении
        MsgBox Substring(Txt, Delimiter, n) 'Substring - искомое слово
    End Sub
     
    Обрати внимание, что Excel-евская функция Application.Trim(...), в отличии от VBA-шной Trim(...), удаляет "лишние" пробелы между словами.
     
    Добавлено:
    Beldesign

    Цитата:
    список фалов из определенной папки

    Фрагмент из книги Дж.Уокенбаха:
    Отображение списка файлов в папке.
    Следующая процедура отображает (на активном рабочем листе) список файлов, которые
    содержатся в определенной папке. Кроме того, отображается размер каждого файла, а также
    дата последнего изменения.
     
    Sub ListFiles()
        Directory = "C:\Windows\Temp\"
        r = 1
            'Вставка заголовков
        Cells(r, 1) = "FileName"
        Cells(r, 2) = "Size"
        Cells(r, 3) = "Date/Time"
        Range("A1:C1").Font.Bold = True
            'Получение первого файла
        f = Dir(Directory, 7)
        Do While f <> ""
            r = r + 1
            Cells(r, 1) = f
            Cells(r, 2) = FileLen(Directory & f)
            Cells(r, 3) = FileDateTime(Directory & f)
            'Получение следующего файла
            f = Dir
        Loop
    End Sub

    Всего записей: 398 | Зарегистр. 31-10-2007 | Отправлено: 06:26 14-11-2007
    Kuzmich07

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Коллеги, выручайте, задача непростая, нужно направление решения.
     
    Я работаю в конторе и сфере бизнеса где про xml еще не слышаи и обмениваются с партнерами кучами екселей.
     
    В полученном екселе нужно выбрать ряд параметров (комбо-боксы), ввести прямые значения в ячейки, нажать пару кнопок и получить в итоговой ячейке результат.
    Проблема в том, что логика в этих екселях является закрытой, документы полностью защищены - только возюканьем мышки по коврику можно получить итоговую цифирь
     
    Я хочу написать программу в том же Excel VBA, которая бы эмулировала нажатия этих кнопок и выбирала нужные значения из списков.
     
    Вопрос: это возможно? То есть могу ли я в VBA своего екселя открыть протектед документ, получить доступ к его визуальным классам и выполнить с ними какие-нибудь действия?
     
    Если невозможно - посоветуйте хорошую крякалку для защищенных MS документов.
     
    ЗЫ: в VBA силен, но не очень, к ячейкам и форматам обращаться умею, но вот с GUI-классами не работал.
     
     
     
    Спасибо заранее!

    Всего записей: 1 | Зарегистр. 14-11-2007 | Отправлено: 13:18 14-11-2007
    Beldesign

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    SAS888
     
    Спасибо большое работает, я не работаю с vba но мне нужно доделать этот скрипт, помогите еще пожалуйста, нужно чтобы макрос запросил ввести путь поиска, и врезультате выдал данные по всем файлам txt расположенном по этому пути в три столбца 1 имя, 2 размер, 3 пустой столбец коментариев. Следующий запуск макроса добавлял бы в этот лист новый поиск продалжая предидущий и подсвечивал одним цветом повторяющиеся позиции по имени. Заранее благодарен (это очень важно)

    Всего записей: 7 | Зарегистр. 28-08-2006 | Отправлено: 13:19 14-11-2007
    SAS888

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Beldesign

    Цитата:
    нужно чтобы макрос запросил ввести путь поиска

    Ну, где-то так:
    Sub Obrabotka()
        Dim FS As FileSearch
        Dim FilePath As String, FileSpec As String
        Dim i As Integer
        Dim q As Integer
        Dim NextRow As Integer
            'Запрос имени папки
        With Application.FileDialog(msoFileDialogFolderPicker)
            .InitialFileName = "C:\"
            .Title = "Укажите рабочую папку"
            .Show
            If .SelectedItems.Count = 0 Then
                Exit Sub
            Else
                FilePath = .SelectedItems(1) & "\"
            End If
        End With
            'Поиск файлов *txt
        FileSpec = "*.txt"
        Set FS = Application.FileSearch
        With FS
            .NewSearch
            .LookIn = FilePath
            .FileName = FileSpec
            .Execute
            If .FoundFiles.Count = 0 Then
                MsgBox "Файлы *.txt не найдены"
                Exit Sub
            End If
        End With
        Application.ScreenUpdating = False
        Cells(1, 1) = "FileName"
        Cells(1, 2) = "Size"
        Cells(1, 3) = "Comment"
        Range("A1:C1").Font.Bold = True
        For i = 1 To FS.FoundFiles.Count
            Call ProcessFiles(FS.FoundFiles(i))
        Next i
                'Подсветка файлов
        i = 1
        q = 2
        Do While i < ActiveSheet.Range("A65536").End(xlUp).Row
            Do While q < ActiveSheet.Range("A65536").End(xlUp).Row
        Comp = StrComp(Cells(i, 1), Cells(q, 1), vbTextCompare)
                If Comp = 0 Then
                    Rows(i).Select
                    Selection.Interior.ColorIndex = 6
                    Rows(q).Select
                    Selection.Interior.ColorIndex = 6
                End If
                q = q + 1
            Loop
            i = i + 1
            q = i + 1
        Loop
        Range("A1").Select
    End Sub
    Sub ProcessFiles(FileName As String)
        Dim NextRow As Integer
        NextRow = 1 + ActiveSheet.Range("A65536").End(xlUp).Row
        Cells(NextRow, 1) = Dir(FileName)
        Cells(NextRow, 2) = FileLen(FilePath & FileName)
    End Sub

    Всего записей: 398 | Зарегистр. 31-10-2007 | Отправлено: 14:48 14-11-2007
    Beldesign

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    SAS888
    Большое спасибо если что-то необходимо по графике и дизайну помогу с удовольствием в любое время     и последний вопрос, что нужно изменить чтобы искать сразу два расширения txt b inf    Обращайтесь за помощью чем смогу тем помогу

    Всего записей: 7 | Зарегистр. 28-08-2006 | Отправлено: 15:43 14-11-2007
    Kaba4ok

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Плииз выручайте.
    Даны: Натуральное число n, действительные числа a0, a1,..., an. Вычислить последовательность а1+1!, а2+2!, an+n!.

    Всего записей: 4 | Зарегистр. 10-11-2007 | Отправлено: 16:33 14-11-2007
    kpblc

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    А самому подумать
    Подробнее...

    Всего записей: 714 | Зарегистр. 08-08-2003 | Отправлено: 17:00 14-11-2007
    Kaba4ok

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    о_О самому думать?! шучу. Спасибо
     
    Добавлено:
    Ой, а еще одну смогете? Последняя...чесслово
     
    Дана матрица натуральных чисел X(n,m). Упорядочить строки матрицы по возрастанию суммы цифр в десятичной системе счисления, используемых для записи элементов строки.

    Всего записей: 4 | Зарегистр. 10-11-2007 | Отправлено: 17:29 14-11-2007 | Исправлено: Kaba4ok, 17:29 14-11-2007
    Beldesign

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    SAS888Большое спасибо я всетаки дальше разобрался

    Всего записей: 7 | Зарегистр. 28-08-2006 | Отправлено: 20:38 14-11-2007
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61

    Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Задачи на Visual Basic (VB).


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2024

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru