Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Visual Basic: новости сайтов, советы, примеры кодов. Выпуск 300.


Информационный Канал Subscribe.Ru

Visual Basic: новости сайтов, советы, примеры кодов.
Выпуск 300.


VBNet VBMania
Ссылки:

  • Улицы VB
  • Использование VB
  • Азбука VB
  • Улицы VB
  • Кирпичики VB
  • CообЧа VB
  • VB по русски
  • MDesign
  • IgorykSoft
  • DanSoft
  • Хрестоматия VB
  • VBCoder
  • Господа!!! читайте MSDN!!!

    Несколько слов от автора:

       Юбилейный выпуск, однако! Если интересно, куда слать пиво, чтобы было, чем отмечать юбилей, пишите мне, расскажу :)))
    Читайте!


    Содержание выпуска




    Новости сайта VBNet



    Последние 20 тем форума на VBNet.Ru:

    15:04 / 21 сен.  Проблемище с ChooseColor | Хитов: 2 |  Ответов: 0
    13:43 / 21 сен.  айпишник | Хитов: 9 |  Ответов: 1
    13:36 / 21 сен.  Как список значений вывести для выбора значений... | Хитов: 2 |  Ответов: 0
    12:45 / 21 сен.  PrintScrin | Хитов: 5 |  Ответов: 0
    12:10 / 21 сен.  Как получить численные координаты объединённой яч | Хитов: 3 |  Ответов: 0
    11:47 / 21 сен.  Помогите мне плисссс!!!!! | Хитов: 14 |  Ответов: 3
    09:12 / 21 сен.  Тест | Хитов: 2 |  Ответов: 0
    08:59 / 21 сен.  News | Хитов: 4 |  Ответов: 0
    08:59 / 21 сен.  Оптимизация подсветки | Хитов: 5 |  Ответов: 0
    08:59 / 21 сен.  News | Хитов: 29 |  Ответов: 2
    08:58 / 21 сен.  Оптимизация подсветки | Хитов: 19 |  Ответов: 4
    00:48 / 21 сен.  Обработка ошибок | Хитов: 19 |  Ответов: 2
    20:25 / 20 сен.  MMC и музыка | Хитов: 17 |  Ответов: 2
    20:24 / 20 сен.  MMC и музыка | Хитов: 2 |  Ответов: 0
    16:12 / 20 сен.  Проверка строковых данных | Хитов: 29 |  Ответов: 2
    14:31 / 20 сен.  Ошибка при входе в Общий форум | Хитов: 0 |  Ответов: 0
    14:30 / 20 сен.  Ошибка при входе в Общий форум | Хитов: 74 |  Ответов: 16
    13:32 / 20 сен.  АУУУ Заведующим разделом ИСХОДНИКИ | Хитов: 0 |  Ответов: 0
    13:31 / 20 сен.  АУУУ - Заведующим разделом ИСХОДНИКИ | Хитов: 54 |  Ответов: 2
    13:31 / 20 сен.  АУУУ - Заведующим разделом ИСХОДНИКИ | Хитов: 7 |  Ответов: 1


    Последние поступления в Библиотеку кодов:



    наверх


    Новости сайта MSDN



    наверх


    Новости сайта GotdotNet



    Новые статьи:



    наверх


    Новости сайта dotSite

    Новые статьи:



    Новые примеры:

    • Guinea TabControl
      Симпатичный TabControl.


    наверх


    Один момент из жизни форума: Дата

    Адерес темы: http://vbnet.ru/forum/show.aspx?id=55250

    Вопрос:
    Автор вопроса: bsv

       Имеется дата - 25.01.1001. Каким образом можно прибавить 1 год или несколько лет, или несколько месяцев?


    Ответы:

    Автор: Павел
       Для этого используется функция DateAdd.



    наверх


    Вопрос/Ответ

    Здесь Вы можете задать вопрос, или ответить на уже имеющиеся вопросы.

    Вопросы:


    Автор вопроса: Sergey

    Ответ ожидается по этому адресу

       Подскажите, в чем проблема.... Excel продолжает висеть в памяти и не выгружается..

    Dim n%
    n = 0

    Set myExcel = New Excel.Application
    Set myWb = myExcel.Workbooks.Open("F:\1.xls")

    Range("B7").Activate

    Do Until ActiveCell.Value = ""
    ActiveCell.Cells(2).Activate
    n = n + 1
    Loop
    n = n + 1
    ActiveCell.Value = n

    myWb.Save
    myExcel.Quit

    Set myExcel = Nothing
    Set myWb = Nothing


    Автор вопроса: Dmitry

    Ответ ожидается по этому адресу

       VB6. В программе вызывается функция из DLL, которая работает длительное время. Как "разморояить" форму на время ее работы? DoEvents не работает.


    Автор вопроса: Anatol

    Ответ ожидается по этому адресу

       Я разрабатываю программу инвентаризации компьютеров в сети ВУЗа, рассредоточенной в пределах города.
    За основу взял AIDA32. Существующие программы подобного назначения мне не подходят по разным причинам. Использую ASP и VBScript. Программа AIDA32 размещена на сервере. У клиентов нет дополнительных программ. Клиент вводит URL-адрес ASP-страницы в своем брауяере, при этом AIDA32 должна загрузиться на машину клиента, там выполниться и передать отчет в формате INI на сервер. Для этого AIDA32 должна выполняться в режиме командной строки с необходимыми параметрами. Например (\\сервер\вирт. каталог\aida32.exe /R \\сервер\вирт.каталог\$HOSTNAME /INI /SUM). Проблема в том, что я не могу добиться выполнения aida32 с параметрами в командной строке. Без параметров aida выполняется на машине клиента, но при этом не создается файл отчета. Привожу строку ASP-файла, которая позволяет выполнить aida на машине клиента, но без параметров:
    Response.Write "AIDA".
    Как выполнить программу с параметрами?
    Наверное, нужен какой-то скрипт или BAT-файл, но я не знаю, как это сделать.


    Автор вопроса: NeoN

    Ответ ожидается по этому адресу

       Я может не совсем в тему, но всё же.
    Я ищу работу по программированию на VB, могу помочь начинающему программисту.
      


    Автор вопроса: Владислав

    Ответ ожидается по этому адресу

       Подскажите, пожалуйста, код Vb.NET для быстрого чтения файла с данными типа Short в массив. Аналог программы в Vb6 имеет вид:

    Sub readB(): Open CommonDialog1.FileName For Binary As #1
    kiData = (LOF(1) - Text2(7).Text * 2) \ 2 'Число отсчетов - слов чистой информации
    ReDim iData%(1 To kiData): Get #1, Text2(7).Text * 2 + 1, iData: Cls: Close 1: End Sub




    Ответы:


    Вопрос:

       Обьясните, как пользоваться событием Drag&Drop. В общем, дайте просто код, как переносить по форме, например, обьект picture1.

    Ответ:

    Автор ответа: C...R...a...S...H

    Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)
    Source.Left = X - m_x
    Source.Top = Y - m_y
    End Sub


    Вопрос:

       Хотел написать программу, которая перехватывала бы нажатия клавиш, и посылала левые символы, но вот вычислять нажатую кнопку получается, только если активно окно VB-программы.
    Подскажите пожалуйста, можно ли это исправить.

    Ответ:

    Автор ответа: NeoN

    Используй Апи функцию GetAsyncState
      
    If GetAsyncState(Vb_KeyF) then
                 ' твои действия
    End if


    Вопрос:

       Каким образом с помощью VB6 открыть конкретный существующий файл Excel (например, уже есть созданный Excel'eм My.xls), считать в нем данные, внести корректировку и записать обратно? Все примеры видел только с вновь создаваемым файлом... VBA не приветствуется... Только отдельный VB6.

    Ответ:

    Автор ответа: Empro

    Посмотри здесь [http://www.vbnet.ru/samples/download.aspx?id=495]. А вообще то вот:

    Option Explicit
      
    Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
    Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

    Private Sub timWait_Timer()
         If (GetAsyncKeyState(vbKeyF5) = -32768) Then 'ждем нажатия F5
             SendKeys ("a") 'например буква А
             Sleep 25 'интервал не забудь (от 1 до ...)
             Exit Sub
         End If
    End Sub



    Ответ:

    Автор ответа: Калинников Дмитрий Львович

    Пример кода VB6

    'в проекте VB необходима ссылка на “Microsoft Excel #.0 Object Library”
      
    'fl – полный путь с именем файла
      
    Private Sub LoadS(fl As String)
    Dim xlP As Excel.Application
    Dim xlBook As Excel.Workbook
    Dim sh As Excel.Worksheet
    Dim r As Integer
      
      
    Set xlP = CreateObject("Excel.Application") 'Открытие приложения Excel
    Set xlBook = xlP.Workbooks.Open(fl) 'Открытие файла
    Set sh = xlBook.Worksheets(1) 'Задание активного листа для работы
      
    r = sh.Cells(1, 1).Value 'чтение (запись) значения ячейки в переменную
      
    sh.Cells(1, 2).Value = r * 3.14 'запись значения переменной в ячейку
      
    xlBook.Save 'сохранение файла Excel
      
      
    xlP.Quit 'завершение работы Excel
    Set xlP = Nothing 'удаление объекта Excel
    End Sub



    Ответ:

    Автор ответа: Q1029

       Workbooks.Open "c:\my.xls" 'открываем файл
       Range("A1")="...какая-то инфа..."

       ActiveWorkbook.SaveAs FileName:="c:\другое имя.xls", _
          FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
          ReadOnlyRecommended:=False, CreateBackup:=False
       'сохраняем с другим именем

       ActiveWorkbook.Save '... с текущим именем

       Workbooks.Close 'закрываем книгу

       Соответственно надо подключить библиотеку Excel.



    Ответ:

    Автор ответа: C...R...a...S...H

    В преференс подключи объект MS Excel 10 или 11.

    Public Sub CreateExcel(xx As Object)
    On Error Resume Next
    Set xx = GetObject(, "Excel.Application")
    If xx Is Nothing Then
    Set xx = CreateObject("Excel.Application")
    End If
    End Sub

    sub XXX()
    Dim ss As Object 'New Excel.Application
    Dim xx As Application
    Dim zz As Workbook
    Call CreateExcel(ss) 'Тут либо создается новый эксель, либо используется уже открытый
    Set xx = ss.Application
    Set zz = ss.Workbooks.Open("МегаФайл.xls")
    xx.Cells(1, 1) = txt1
    xx.Cells(2, 1) = txt2
    end sub


    Вопрос:

       Создаю RecordSet на лету (из кода), устанавливаю поля, заполняю строки. Каким образом можно установить фильтр для него или сортировку?

    Дело в том, что динамически созданный RecordSet не имеет подключения, и висит объектом в памяти, скидывать его в файл я не могу и не хочу по определению. Использовать массивы, - тоже не хочу из-за неудобства выборок.

    Пример кода:
    в референсе ссылка на ADO 2.7

    Dim rs1 As ADODB.Recordset
    Private Sub Command1_Click()
    Set rs1 = New ADODB.Recordset
    rs1.Fields.Append "q1", adVariant
    rs1.Fields.Append "q2", adVariant
    rs1.Fields.Append "q3", adVariant
    rs1.Fields.Append "q4", adVariant
    rs1.Fields.Append "q5", adVariant
    rs1.Fields.Append "q6", adVariant
    rs1.Fields.Append "q7", adVariant
    rs1.Fields.Append "q8", adVariant
    rs1.Fields.Append "q9", adVariant
    rs1.Fields.Append "q10", adVariant

    rs1.CursorLocation = adUseClient

    rs1.Open , , adOpenKeyset, adLockOptimistic
    ' Хоть мы и заказали ключевой набор, был открыт статический, кто не
    ' верит пусть проверит ;)

    For a = 0 To 9
         rs1.AddNew
         rs1.Fields(a).Value = a
         rs1.Update
    Next a

    rs1.MoveFirst

    ' А ВОТ ЗДЕСЬ ИДУТ САМЫЕ НУЖНЫЕ СТРОКИ!!!
    ' Сортируем и обламываемся
    rs1.Sort = "q1 desc"
    ' Фильтруем и обламываемся
    rs1.Filter = "q1=1"

    ' Дело в том, что CursorType в данном объекте СТАТИЧЕСКИЙ,
    ' соответственно запрещены все не касающиеся его операции.
    ' Возможен ли выход из данной ситуации?
    ' Принимаются существенные ответы, новичков просьба не беспокоить


    End Sub

    Ответ:

    Автор ответа: Калинников Дмитрий Львович

    Как вариант: не проще сделать запрос к RecordSet?...Правда это породит ещё один RecordSet...




    Можете заполнить эту форму, либо отослать вопрос СЮДА

    Форма для добавления нового вопроса в этот раздел. Информация отсылается по E-mail владельцу сайта.
    Текст сообщения:
    Ваше имя
    E-mail для ответа

    наверх


    Выпуск подготовили:

    Сурменок Павел

    http://subscribe.ru/
    http://subscribe.ru/feedback/
    Подписан адрес:
    Код этой рассылки: comp.soft.prog.vbnewsadvices
    Отписаться

    В избранное